如何将.jar 1.7转换为.jar 1.6

  • 本文关键字:jar 转换 java jar java-6
  • 更新时间 :
  • 英文 :


我已经在我的android应用程序中将Dropbox API框架从2.0.1更新到了当前的3.1.2。在打包我的应用程序时,我收到了多个错误,如:

[INFO]处理故障:[INFO]mald class file magic(cafebabe)or版本(0033.0000)[信息]。。。分析时com/dropbox/sync/android/DbxStringValue.class[信息]。。。虽然处理com/dropbox/sync/android/DbxStringValue.class[INF]

文件似乎是由jdk 1.7编译的,但我仍然使用jdk 1.6,我不想更新到jdk 1.7(以避免新的错误和不兼容)。

如何将.jar 1.7转换为.jar 1.6?

如果jar已经包含使用Java 7.0编译并以Java 7.0为目标的类,则这些类很可能使用仅在Java 7.0中可用的功能,在这种情况下,您将无法转换它(除非您使用仅Java 7.0功能代码重新关联代码)。

如果你很幸运,这些类只是用Java 7.0编译和定位的,但它们实际上没有使用Java 7.0中引入的任何新功能,你可以使用Java反编译器从你的jar中获取Java源文件,用Java 6.0重新编译,重新打包,就完成了。

要将.class文件反编译为.java文件,您可以使用JD项目或使用任何其他替代方案。

更多选项:

AndroChef Java解压程序

dex2jar

但最好和最简单的方法是升级到Java 7.0。你会得到比失去更多的东西(如果你甚至失去了任何东西)。

最新更新