首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >java中的版本错配

java中的版本错配
EN

Stack Overflow用户
提问于 2012-06-10 11:44:38
回答 2查看 370关注 0票数 0

我正在从事一个基于cloudsim3.0项目的大学项目。我使用jdk 7,而cloudsim使用JDK1.3。所以我必须改变一切:泛型,for-each循环,等等。我从NetBeans收到的一些错误是:

  • 泛型不支持-source1.3 (使用-source7或更高.)交换机中的
  • 字符串不支持-source1.3 (使用-source7或更高.).

如何将jdk版本从1.3更改为7?谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-06-10 12:15:03

通常,您希望非常小心地使用比部署到的更高的Java版本进行开发。Netbeans使用的JDK中的java编译器不支持将Java 7源代码编译为1.3字节码,因此您需要使用另一个编译器。

我花了很长一段时间来研究如何获得Java 1.4,您可以直接在Eclipse中使用Eclipse编译器,也可以使用ecj (它是命令行中的javac下拉列表),可以在ant中使用,也可以使用Retroweaver,它可以主动地将字节代码转换为早期版本。

您可能会考虑直接使用Java 1.3来处理您的项目,因为如果您的代码由于任何原因不能工作的话,它将从您需要研究的内容中删除所有这些神奇的元素。

票数 1
EN

Stack Overflow用户

发布于 2012-06-10 12:15:28

您的问题有点混乱,但如果您询问如何为JDK 1.3编译Java 7源代码,则最有意义。

答案是你做不到,那些构造(泛型,每个循环,字符串开关)都需要一个更现代的目标平台。

从理论上讲,您有两个可能的解决方案:

  • 从代码中删除所有Java5、6、7-语言,并使用-source 1.3 -target 1.3进行编译。(或者下载并安装一个旧的Java1.3JDK.)
  • 使用Java7JVM运行CloudSim3.0代码。它应该可以工作,除非它依赖于已经修复的旧bug。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10968389

复制
相关文章

相似问题

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