-1

由于某些原因,我需要使用 JDK8 和 JDK9。将两个路径(到 JDK8 和 JDK9)放入同一个 JAVA_HOME 系统环境的变量中是个好主意吗?

详细信息:我需要同时运行两个系统,一个使用 ant(使用 jdk8),第二个使用 maven(使用 jdk9)。

4

2 回答 2

1

通常该路径是为命令行界面中当前活动的 java 命令关键字保留的。使用终端时,您不能在任何时候同时激活多个 JDK。所以这不是一个好主意。

但是,您可以将 JAVA_HOME 指向安装了多个 JDK 的文件夹,然后将 PATH 变量设置为某个 JDK。因此,当您想更改 JDK 时,您只需更改 PATH 变量并保持 JAVA_HOME 不变。

如果您打算在 IDE 中的多个项目中使用不同的 JDK,那么是的,您可以拥有多个 JDK,您可以在“项目设置”中选择要使用的 JDK。

于 2018-03-15T13:13:34.163 回答
0

如果我是你,那么我将在命令提示符或终端中.profile.bashrc为命令提示符或终端创建函数(),它将JAVA_HOME变量导出到Java8Java9取决于我是否正在运行antmvn分别运行。

假设您的 Java8 和 Java9 安装在以下位置...

  • C:\Program Files\Java\jdk1.8.0_151\bin
  • C:\Program Files\Java\jdk1.9.0_4\bin

那么你的功能.profile应该.bashrc是这样的......

对于ant和 Java8(这里我将命令行参数传递$1ant命令)...

runant() {
  export JAVA_HOME="C:\Program Files\Java\jdk1.8.0_151\bin";
  ant $1;
}

对于mvn和 Java9 ...

runmvn() {
  export JAVA_HOME="C:\Program Files\Java\jdk1.9.0_4\bin";
  mvn clean install;
}

使用上述功能,您可以从命令提示符运行ant并仅针对该特定运行进行适当设置。mvnJAVA_HOME

于 2018-03-16T07:52:55.820 回答