多个平台,一个JDK安装

时间:2016-04-27 23:17:09

标签: java netbeans java-8 java-7

背景

已安装JDK v1.8.0_92 和NetBeans v8.0.2

问题

该项目需要Java Platform 1.7,如下所示:

NetBeans Project Properties

问题

是否可以使用JDK 1.8并将1.7设置为目标平台?如果是这样,怎么样?

其他详细信息

设置目标版本(通过其他编译器选项)不会影响目标平台,如下所示:

NetBeans Target Build

我的印象是我需要同时安装JDK 1.8({3}}所需)和JDK 1.7(项目所需)。

理想情况下,我希望避免在同一台计算机上安装多个JDK。我怀疑这是不可能的,因为1.8平台中的功能可能已在1.8中删除(例如,已弃用的方法)。

1 个答案:

答案 0 :(得分:2)

不仅可以在同一台计算机上安装多个JDK,而且大多数开发人员最终都会这样做。唯一要注意的是路径上的多个JDK(和JAVA_HOME)同时(显然路径上的JDK应该与JAVA_HOME中的JDK匹配,最容易通过将%JAVA_HOME%\ bin添加到路径env中来确保VAR)

  1.7平台中的

功能可能已在1.8

中删除

众所周知,JDK是向后兼容的。从Java 1中留下的内容可能永远不会删除(不利于某些java开发人员,包括我)。一些常见的(令人讨厌的)示例是Thread.stop(),某些类上的serialVersionUid的奇怪值,由于java 4兼容性而对泛型的不完全支持,原始Container类和AWT的持续存在,以及更多,更多。

更大的问题实际上是安装和使用JDK 8并定位java 7(通过指定-target,就像在屏幕截图中一样)。这里的风险是你不小心导入了java 8的新东西,此时jdk8很乐意生成java7兼容的字节码,无法找到你在运行时使用的类/方法。

个人而言,在Windows上,我所做的只是在某处提取一堆JDK(例如c:\ dev \ tools \ jdks)并根据需要配置不同的IDE项目以使用不同的项目。我不喜欢让他们“安装”。