强制Eclipse仅使用Java1.4

强制Eclipse仅使用Java1.4,java,eclipse,Java,Eclipse,在本地,我需要针对Java1.4编写代码 我在这篇文章中尝试了这个建议 但是Eclipse仍然为String.contains提供代码完成功能,该功能仅在Java1.5中可用,也没有提供红色的X错误标记 如何让Eclipse只提供Java 1.4类和方法的代码完成,并用红色X警告我不能使用1.4版以上的内容?右键单击项目并转到属性。检查Java编译器选项以确保jdk符合1.4。右键单击项目并转到属性。检查Java编译器选项以确保jdk符合1.4。转到项目属性->Java编译器并确保所有jdk符

在本地,我需要针对Java1.4编写代码

我在这篇文章中尝试了这个建议

但是Eclipse仍然为
String.contains提供代码完成功能,该功能仅在Java1.5中可用,也没有提供红色的X错误标记


如何让Eclipse只提供Java 1.4类和方法的代码完成,并用红色X警告我不能使用1.4版以上的内容?

右键单击项目并转到属性。检查Java编译器选项以确保jdk符合1.4。右键单击项目并转到属性。检查Java编译器选项以确保jdk符合1.4。

转到项目属性->Java编译器并确保所有jdk符合性设置均为1.4

转到项目属性->Java编译器并确保所有jdk符合性设置均为1.4

转到项目设置-->Java编译器,取消选中默认代码符合性并选择1.4。

转到项目设置-->Java编译器,取消选中默认代码符合性并选择1.4。

您必须在计算机上安装Java版本1.4.2并定义jre 1.4.2。仅用1.4设置编译是不够的,因为您仍然可以看到1.5API,您必须在计算机上安装java版本1.4.2并定义jre 1.4.2。仅用1.4设置Compilence是不够的,因为您仍然可以看到1.5API,除非您实际安装了JDK1.4,否则Eclipse的编译器无法知道String.contains()之类的东西不在该版本中。指定执行环境只是告诉它只能进行与Java 1.4兼容的编译,但String类中的方法等是库(classes.jar)的一部分,而不是Java语言级别固有的。因此,如果您只有更高版本的JDK,编译器会在classes.jar中看到String.contains(),从而根据它编译代码


因此,安装JDK1.4,然后在Preferences的Installed JREs部分进行设置;还要确保它被设置为1.4执行环境的默认值。

除非您实际安装了JDK 1.4,否则Eclipse的编译器无法知道String.contains()之类的内容不在该版本中。指定执行环境只是告诉它只能进行与Java 1.4兼容的编译,但String类中的方法等是库(classes.jar)的一部分,而不是Java语言级别固有的。因此,如果您只有更高版本的JDK,编译器会在classes.jar中看到String.contains(),从而根据它编译代码


因此,安装JDK1.4,然后在Preferences的Installed JREs部分进行设置;还要确保将其设置为1.4执行环境的默认值。

您可以按照以下步骤强制eclipse使用任何以前的java版本:

步骤

  • 右键单击项目,然后单击属性选项打开属性
  • 选择Java编译器选项
  • JDK Compliance类别中,取消选中从执行中使用法规遵从性…选项
  • 现在在编译器遵从性级别:选项中选择所需的java版本(1.4)
  • 然后单击确定
  • 结果


    现在,eclipse将使用所需的早期版本(比如1.4),而无需显式安装,即使您已经安装/配置了1.7或8.0。

    您可以按照以下步骤强制eclipse使用任何早期java版本:

    步骤

  • 右键单击项目,然后单击属性选项打开属性
  • 选择Java编译器选项
  • JDK Compliance类别中,取消选中从执行中使用法规遵从性…选项
  • 现在在编译器遵从性级别:选项中选择所需的java版本(1.4)
  • 然后单击确定
  • 结果


    现在,即使安装/配置了1.7或8.0,eclipse也将使用所需的早期版本(比如1.4),而无需显式安装它。

    是否设置了编译级别?它也应该设置为1.4。我猜你刚刚添加了JRE。我的编译器兼容性级别设置为1.4。但我的电脑上安装的是1.6。正如ajozwik指出的那样,我可能需要在我的PC上安装JDK1.4,因此在本地编码时,如果类超出范围,我会得到红色的X。您设置了编译级别了吗?它也应该设置为1.4。我猜你刚刚添加了JRE。我的编译器兼容性级别设置为1.4。但我的电脑上安装的是1.6。正如ajozwik指出的那样,我可能需要在我的PC上安装JDK1.4,因此在本地编码时,如果类超出范围,我会得到红色的X,这听起来是正确的。它使我们的PC使用JDK保持最新,但在我们的Web服务器上,他们仍然在eclipse preference->java->installed jre中使用1.4,并添加JDK 1.4。接下来转到执行环境,选择J2SE-1.4并检查JDK1.4这不是我问题中链接中描述的方式吗?但是没有下载JDK1.4?现在我选择了J2SE-1.4(jdk1.6.0_22),如果我下载1.4,它会读成J2SE-1.4(jdk1.4.2)吗?我认为执行环境的要点是能够降级版本,而不必在普通库中实际下载并安装该version.rt.jar。如果它包含新方法-eclipse,请查看它。eclipse(和java编译器)的commons-lang.jar和rt.jar之间并没有区别,这听起来不错。它使我们的PC使用JDK保持最新,但在我们的Web服务器上,他们仍然在eclipse preference->java->installed jre中使用1.4,并添加JDK 1.4。接下来转到执行环境,选择J2SE-1.4并检查JDK1.4这不是我问题中链接中描述的方式吗?但是没有下载JDK1.4?现在我选择了J2SE-1.4(jdk1.6.02