将默认的Java路径更改为FreeBSD中的其他路径

Rat*_*esh 4 java freebsd path-variables java-home

我有脚本可以从此命令获取java路径:readlink -f $(which java)

但它显示错误的路径:/usr/local/bin/javavm

虽然我需要有这个路径: /usr/local/openjdk8/bin/java

我尝试给出导出命令: export JAVA_HOME=/usr/local/openjdk8/,但问题仍然相同。

我也尝试过这篇文章:https ://stackoverflow.com/a/39691105/10220825

这篇文章:https ://askubuntu.com/a/554052/905016

我也尝试过:sudo ln -s /usr/local/bin/javavm /usr/local/openjdk8/bin/java 但结果ln: /usr/local/openjdk8/bin/java: File exists和问题仍然相同。

我不想对其进行硬编码,也不想使用其他命令,例如which javaecho $JAVA_HOME,因为脚本在 Linux 中得到了预期的结果,但只有 FreeBSD 机器出现问题。

我也不想应用任何类似于awksed 的输出的解析readlink -f $(which java)

有人可以建议我如何更改readlink -f $(which java).

Kon*_*lph 6

您\xe2\x80\x99 看到的是FreeBSD 上记录的行为

\n

如果要选择特定的Java版本,请设置JAVA_VERSION环境变量,例如:

\n
JAVA_VERSION=8+ javac MyClass.java\n
Run Code Online (Sandbox Code Playgroud)\n

如果您想了解正在运行的版本,请设置JAVAVM_DRYRUN=yes

\n
JAVAVM_DRYRUN=yes java\n\nJAVAVM_DRYRUN=yes JAVA_VERSION=11 java\n
Run Code Online (Sandbox Code Playgroud)\n