繁体   English   中英

将Java从版本8降级到7

[英]Downgrade java from version 8 to 7

我在Ubuntu上安装了Oracle的Java 1.8,因为我认为它最好,最新版本与之前的版本兼容。 但事实并非如此。 javac 1.8生成只能在java-8-oracle上运行的字节码,scala不能运行。

在升级之前我使用的是java-7-openjdk,一切都很好。 虽然我可以使用sudo update-alternatives --config java选择我的旧虚拟机,但我还需要能够选择较旧的编译器。 我怎样才能做到这一点?

使用-target标志为早期版本生成字节码。 例如javac -target 1.5 FooBar.java

没有必要降级。

至少对于Oracle的JDK(不确定OpenJDK):安装oracle-java7-set-defaultoracle-java8-set-default包,具体取决于你想要成为系统默认的java版本。

您可以从以下网址获取: http//ppa.launchpad.net/webupd8team/java/ubuntu (包括实际的Oracle JDK)请参阅: https//launchpad.net/~webupd8team/+archive/java

或者,您可以在/ etc / environment中设置PATH和JAVA_HOME环境变量

也就是说,编译时可以将源和目标级别指定为1.7,这也会在使用JDK 8时生成兼容Java SE 7的字节码。但请注意,它不会检查您是否使用了Java SE中不可用的某些API 7。

出于这个原因,我建议始终使用您目标的JDK版本,而不是进行一些交叉编译(这需要一些额外的额外步骤才能正确完成)。

但请注意,您可以在系统上安装多个JDK版本。 IDE通常允许您选择在开发期间使用哪一个。

  1. java_home环境变量设置为旧版本并使用它编译Java文件。 确保path变量中的java.exe是早期版本。

  2. 编译时使用-target标志。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM