【发布时间】:2020-09-04 09:37:29
【问题描述】:
我有脚本可以从此命令获取 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 java 或echo $JAVA_HOME,因为脚本在 Linux 中获得了预期的结果,但只有在 FreeBSD 机器上出现问题。
我也不想从readlink -f $(which java) 的输出中应用任何解析,例如awk 或sed。
有人可以建议我如何更改 readlink -f $(which java) 的值。
【问题讨论】:
-
readlink确实 not 报告了错误的路径。是否要将默认路径更改为其他内容?试试update-alternative。 -
您可能希望将
unix标记替换为您使用的实际Linux 风格(例如bsd)。 -
你到底想在这里做什么?为什么这些路径很重要?
-
(正确的
ln语法是ln -s <source> [destination]) -
@Ratnesh 这没有回答我的问题。 为什么你想这样做?
标签: java freebsd java-home path-variables