在特定目录中使用特定版本的 Java

在特定目录中使用特定版本的 Java

我当前的默认 Java 版本是 7(目前无法更新 - 我知道它已达到 EOL),但也安装了 Java 8。

但是,我有一些第三方 jar(都包含在一个目录中),它们需要 Java 1.8。每个 jar 都有一个关联的 bash 脚本来检查相关的环境变量,并构造运行 jar 所需的 java 命令。每个 bash 脚本都假定调用 java 的命令是 ,这并不奇怪java

有没有办法让我将调用时执行的 Java 版本java从 7 更改为 8仅限此文件夹

答案1

当然:将你的添加pwdPATH变量中,在最重要的位置,IE

 export PATH=.:$PATH

您应该使用上述版本,不是 export PATH=$PWD:$PATH因为在这种情况下,$PWD在获取包含命令的 bash 文件时会进行评估,而您希望每次都对其进行评估。

现在在需要与标准版本不同的目录中创建您想要使用的 Java 版本的符号:

ln -s /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java ./java

或者无论你的可执行文件叫什么。

请注意,将您的 PWD 包含在 PATH 变量中存在潜在的安全风险。

相关内容