Java JDK编译器版本问题

Java JDK编译器版本问题,java,Java,我正在使用Ant编译Java。该项目必须使用JDK1.5进行编译,但是部分代码引用了使用JDK1.6版本编译的包。 我将JAVA_HOME设置为1.5,在这个引用中抛出错误 [javac]类文件的版本50.0错误,应为49.0 如果不将参考版本降级到1.5,出路何在?你所问的是不可能的。您应该使用JDK1.5编译库。您所要求的是不可能的。您应该使用JDK1.5编译库。一旦Java在某个版本上编译,就不能在旧版本的Java上使用该版本 您正在使用的软件包可能有一个适用于旧版本Java的可用版本,或

我正在使用Ant编译Java。该项目必须使用JDK1.5进行编译,但是部分代码引用了使用JDK1.6版本编译的包。 我将JAVA_HOME设置为1.5,在这个引用中抛出错误

[javac]类文件的版本50.0错误,应为49.0


如果不将参考版本降级到1.5,出路何在?你所问的是不可能的。您应该使用JDK1.5编译库。

您所要求的是不可能的。您应该使用JDK1.5编译库。

一旦Java在某个版本上编译,就不能在旧版本的Java上使用该版本


您正在使用的软件包可能有一个适用于旧版本Java的可用版本,或者您可以获取源代码并使用旧版本重新编译(如果它不使用任何Java 6库/功能)。

一旦Java在某个版本上编译,您不能在旧版本的Java上使用该版本

您正在使用的软件包可能有一个适用于旧版本Java的可用版本,或者您可以获取源代码并使用旧版本重新编译(如果它不使用任何Java 6库/功能)。

这样想:

您使用的库是使用JDK 6编译的。它可能使用了Java6中引入的一些特性(这些特性不是Java早期版本的一部分)

当您使用JDK5编译和运行时,遇到这个“新”特性时,您希望编译器(和运行时)做什么?JDK 5不知道这个特性,因此会“困惑”

为了避免在运行时出现这种混乱,编译本身会失败

您有两个选择:

  • 使用JDK 6编译您的项目
  • 获取库的JDK5编译版本
如果您的项目使用JDK 6,而库是使用JDK 5编译的,那么您就不会因为向后兼容而面临这个问题。

这样想:

您使用的库是使用JDK 6编译的。它可能使用了Java6中引入的一些特性(这些特性不是Java早期版本的一部分)

当您使用JDK5编译和运行时,遇到这个“新”特性时,您希望编译器(和运行时)做什么?JDK 5不知道这个特性,因此会“困惑”

为了避免在运行时出现这种混乱,编译本身会失败

您有两个选择:

  • 使用JDK 6编译您的项目
  • 获取库的JDK5编译版本

如果您的项目使用JDK 6,并且库是使用JDK 5编译的,那么您就不会遇到这个问题,因为向后兼容。

同样的问题是在NetBeans IDE上进行无问题的编译。我需要这个支持commandline@Pushparaj同样的是在NetBeans IDE上进行无问题的编译您确定NetBeans正在使用JDK 5吗?同样的是在NetBeans IDE上进行无问题的编译。我需要这个支持commandline@Pushparaj同样,在NetBeans IDE上进行无问题的协同编译您确定NetBeans正在使用JDK 5吗?更具体地说,代码只使用JDK 1.6版本的jar。当Java级别设置为1时,NetBeans会成功编译项目。5@Pushparaj用于NetBeans和的编译器与ant一起使用的那个—它们是相同的吗?更具体地说,代码只使用JDK1.6版本的jar。当Java级别设置为1时,NetBeans会成功编译项目。5@Pushparaj您在NetBeans中使用的编译器与在ant中使用的编译器相同吗?