如何防止java 1.4项目使用1.5 / 1.6特定API?

时间:2009-12-14 09:56:44

标签: java eclipse-3.5

有没有办法限制配置了1.4编译器合规级别的java项目使用系统正在使用1.6 JRE的1.5 / 1.6特定API?

在我的项目中仅设置1.4编译器合规性级别并不警告我特别使用1.5 / 1.6特定java.lang.String方法。

4 个答案:

答案 0 :(得分:6)

确保您还在项目中使用1.4 JRE系统库。 1.4编译器设置会更改将写入类文件的功能,它不会限制您从项目中的库中看到的内容。

打开项目的属性并检查“Java Build Path”下的内容 - > “图书馆” - > “JRE系统库”。单击“编辑”以更改或添加新的Java版本。

答案 1 :(得分:2)

我建议最安全(也许最简单)的方法是使用JDK 1.4 编译,使用JRE 1.6 运行

答案 2 :(得分:1)

您需要1.4 JRE中的rt.jar(例如安装1.4 JRE)。如果使用javac,请使用以下选项:

 javac -source 1.4 -target 1.4 -bootclasspath /path/to/j2se1.4/lib/rt.jar [...]

使用后来JRE中的javac意味着它应该减少旧源的错误,尽管它可能不一定完全是“错误兼容”。

您可能还想使用-Djava.ext.dirs=directories-Djava.endorsed.dirs,但将内容放在这些目录中通常是一个坏主意。

注意:即使1.5已完成其服务终止期限。获得1.6! (或者购买我们出色的Java for Business合同......)

答案 3 :(得分:-1)

我要做的是从Eclipse的设置中删除那些你不想使用的JDK / JRE。在你的情况下,这将是1.5和1.6。

要执行此操作,请转到Windows->偏好设置,然后在左上角键入“JRE”。

我还会检查启动的JRE Eclipse,并可能编辑你的eclipse.ini。