我正在使用Java应用程序,我需要使用名为myBeans.jar
的jar。
此myBeans.jar
包含许多使用 jdk 1.7 编译的类文件。我没有这些类文件的源代码。
我的整个应用程序正在使用 jdk 1.6 。我无法将其编译器更改为 jdk 1.7 。 所以我希望我的jar与我的应用程序兼容。这就是为什么我希望用 jdk 1.6 编译jar的类。
现在我的问题是:有没有办法使用jdk 1.6编译类文件(&而不是java文件)?
也欢迎任何其他建议。
有人建议我使用反编译器和放大器从类文件中获取源代码。然后用jdk 1.6编译源代码。但是我最后会喜欢这个解决方案,因为有很多类文件。
答案 0 :(得分:3)
这可能行不通。 Java 7引入了早期版本中不存在的语言功能,因此如果在库中使用了这些功能,则可能无法使用JDK 6重新编译。
此外,每个Java修订版都引入了新的方法和类,因此如果库中使用了任何@since 1.7
项,它们将不会出现在Java 6环境中,并且构建将失败。