对于基于 Linux OpenJDK Debian 的发行版,JAVA_HOME环境变量的正确目标是什么?
2022-08-31 11:01:37
在 Windows 中,必须指向 JDK 安装文件夹(以便包含所有可执行文件并包含所有默认库)。JAVA_HOMEJAVA_HOME/binJAVA_HOME/libsjar
如果我下载Sun的JDK捆绑包并将其安装在Linux中,则过程相同。
但是,我需要使用Kubuntu的默认OpenJDK包。问题是所有可执行文件都放在 中。但是罐子被放在.由于它们不在同一文件夹下,我在使用Grails时遇到问题,并且可能在其他期望标准Java结构的应用程序上遇到麻烦。/usr/bin/usr/share/javaJAVA_HOME
-
如果我使用:
JAVA_HOME=/usr所有想要使用任何 Java 可执行文件的应用程序和脚本都可以使用标准过程。但是,由于罐子位于不同的地方,因此并不总是找到它们(例如:在圣杯中,我得到了)。
call $JAVA_HOME/bin/executableClassDefNotFoundnative2ascii -
另一方面,如果我使用:
JAVA_HOME=/usr/share/java找不到任何 Java 可执行文件 (、 等)。
javajavac
那么,在基于 Debian 的 Linux 中处理变量的正确方法是什么?JAVA_HOME
谢谢你的帮助,路易斯