管理多个版本的JDK:无效的源发布错误

我安装了jdk 1.6和1.7。

我已将我的JAVA_HOME变量更新为

C:\Program Files\Java\jdk1.6.0_24;C:\Program Files\Java\jdk1.7.0 

但是当我尝试运行java代码时。

 >javac -version javac 1.6.0_24 >java -version java version "1.7.0_09" >javac -source 1.7.0 -target 1.7.0 Test.java javac: invalid source release: 1.7.0 

你的jdk仍然指向JDK 1.6。 javac与jdk捆绑在一起,而java -version在理想情况下运行即使正确安装了jre。

最简单的解决方案是使用java_home工具。

 /usr/libexec/java_home -v 1.7.0_51 --exec javac -version 

您的“javac -version”测试表明您使用的是javac 1.6。 然后你试图构建1.7,这是1.6编译器未知的未来版本。 我会像一些评论建议那样做,只为给定项目定义一个JDK。

怎么样javac -source 1.7 -target 1.7 Test.java