我当前的默认 Java 版本是 7(目前无法更新 - 我知道它已达到 EOL),但也安装了 Java 8。
但是,我有一些第三方 jar(都包含在一个目录中),它们需要 Java 1.8。每个 jar 都有一个关联的 bash 脚本来检查相关的环境变量,并构造运行 jar 所需的 java 命令。每个 bash 脚本都假定调用 java 的命令是 ,这并不奇怪java
。
有没有办法让我将调用时执行的 Java 版本java
从 7 更改为 8仅限此文件夹?
答案1
当然:将你的添加pwd
到PATH
变量中,在最重要的位置,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 变量中存在潜在的安全风险。