我已经安装了一个Java版本。我们如何正确设置
$JAVA_HOME
环境变量?/etc/profile
中设置您的JAVA_HOME
。但是/etc/environment
是首选的JAVA_HOME
或任何系统变量的位置。nano
或gedit
)中打开/etc/environment
并添加以下行:JAVA_HOME="/usr/lib/jvm/open-jdk"
(java路径可能不同)
使用source
命令加载变量,运行以下命令:
source /etc/environment
echo $JAVA_HOME
更新
通常大多数Linux系统默认会引用/etc/environment文件。如果您的系统没有这样做,请将以下行添加到~/.bashrc
文件中(感谢@pje)。
source /etc/environment
gksudo gedit /etc/environment
3. 根据您安装Java的位置,您需要提供完整路径。以此示例为例,我将Oracle JDK 7安装在/usr/lib/jvm/java-7-oracle
目录中。JAVA_HOME=/usr/lib/jvm/java-7-oracle
export JAVA_HOME
4. 保存文件并退出gedit。
5. 最后,使用以下命令重新加载系统路径:. /etc/environment
以上方法将避免您每次登录计算机时都要运行这些命令的麻烦。/etc/environment
中是否需要添加export
命令? - pkaramol/etc/environment
文件的一行中添加了export
,这有帮助吗?该文件包含解析为以=
分隔的名称-值对的变量定义;其内容不会作为命令执行。(请参见man pam_env
)。因此,除非你将该文件单独处理为脚本(例如通过将/etc/environment
传递给bash的.
/source
内置命令),否则我不会指望它起作用。 - Eliah Kaganupdate-alternatives --config java
来查找路径。要设置变量,你可以写JAVA_HOME=<PATH>
,然后跟着export JAVA_HOME
。注意,在声明变量时不要有空格。要检查变量是否存储,只需输入echo $JAVA_HOME
进行验证。update-alternatives --install <link> <name> <target> <priority>
例如:
update-alternatives --install /usr/bin/java java /usr/lib/jvm/default-runtime/bin/java 1
- Errosudo apt install default-jdk # or default-jre
/usr/lib/jvm/default-java
找到它。
这是一个符号链接,指向同一文件夹中当前JVM的位置。
所以,只需运行以下命令将环境添加为一个单独的文件:sudo nano /etc/environment.d/90java.conf
JAVA_HOME="/usr/lib/jvm/default-java"
source /etc/environment.d/90java.conf
来加载它。
~/.bashrc
的顶部添加了一行代码source /etc/environment
,这样它就可以在启动时加载所有的环境设置了。目前对我来说还有效。 - pjesource
命令重新加载配置。 - Manula Waidyanathals: cannot access '/usr/lib/jvm/open-jdk': No such file or directory
- Damiendefault-jdk
或default-jre
,你应该能在JAVA_HOME="/usr/lib/jvm/default-java"
找到它。这是一个符号链接,指向同一文件夹中的当前版本。如果你总是想使用最新安装的版本,这是最佳选择。 - undefined