首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在java 6中加载/运行用java 7编译的类

在java 6中加载/运行用java 7编译的类
EN

Stack Overflow用户
提问于 2013-07-15 19:47:47
回答 1查看 1K关注 0票数 1

我在我的组件中使用了一些客户端jars,这些客户端jars是用Java7编译和运行的。由于一些管理决策,我不能迁移到Java7。我想让客户端jars在我的Java6中工作(编译/运行)。我可以用什么方法来实现这一点吗?.I。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-15 20:01:52

我想让客户端jars在我的Java6中工作(编译/运行),有什么方法可以实现这一点吗?

如果您有源代码,可以尝试在Java6构建平台上编译代码。但是,不能保证它会按原样编译和运行:

constructs.

  • The代码可以使用Java7语言
  • 代码可以使用Java7特定的类或方法。

坏消息是,没有神奇的方法来处理由上述引起的任何编译错误。您需要手动将Java7-isms翻译成与Java6兼容的源代码。

但好消息是,如果代码在Java 6 JDK上编译,那么它很有可能在Java 6 JRE上运行。

如果您无法访问源代码,那么问题就会变得非常非常困难

从理论上讲,可以将字节码转换为更早的版本,但执行此操作的工具往往具有明显的局限性。以下是一些可能的线索:

  • Retrotranslator将Java1.5字节码转换成(一些)旧的platforms.
  • Retroweaver也做同样的事情。

请注意,我还没有找到将Java 7转换为Java 6的“复古”工具。(可能是没有人完成这项工作,或者Java 7的某些方面使问题变得难以解决)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17653552

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档