我在我的组件中使用了一些客户端jar,客户端jar被编译并使用java 7运行。由于一些管理决策,我无法移动到java 7.我希望客户端jar工作(编译/运行)在我的java 6中我能以任何方式实现这个目标吗?
由于
答案 0 :(得分:2)
我想让客户端jar在我的java 6中以任何方式工作(编译/运行)吗?
如果您有源代码,可以尝试在Java 6构建平台上编译代码。但是,无法保证它将按原样编译和运行:
代码可能使用Java 7语言结构。
代码可以使用Java 7特定的类或方法。
坏消息是没有神奇的方法来处理由上述引起的任何编译错误。您需要将Java 7-isms转换为Java 6兼容源代码。
但好消息是,如果代码在Java 6 JDK上进行编译,那么它很有可能在Java 6 JRE上运行。
如果您无权访问该源代码,那么问题就更加困难了
理论上可以将字节码转换为早期版本,但执行此操作的工具往往具有很大的局限性。以下是一些可能的线索:
请注意,我没有设法找到一个将Java 7转换为Java 6的“复古”工具。(没有人完成这项工作,或者有一些关于Java 7的问题会使问题变得棘手。)