Ubuntu 现在可以设置 java 路径

Posted

技术标签:

【中文标题】Ubuntu 现在可以设置 java 路径【英文标题】:Ubuntu now able to set java path 【发布时间】:2014-02-27 12:32:31 【问题描述】:

我已经在 /usr/lib/jvm/ 中安装了 oracle jdk,并且我已经在 etc/environment 中设置了路径

JAVA_HOME=/usr/lib/jvm/jdk1.7.0_51
PATH=$PATH:$JAVA_HOME/bin

但是当我运行 javac 时,仍然出现以下错误。程序“javac”可以在以下包中找到:

* default-jdk
* ecj
* gcj-4.6-jdk
* gcj-4.7-jdk
* openjdk-7-jdk
* openjdk-6-jdk

这意味着 javac 未安装或 java 路径设置不正确,但是我可以在我的 /usr/lib/jvm/jdk1.7.0_51 中看到 javac、java、jps 和其他程序。我已经对它进行了足够的搜索,但仍然无法解决这个问题。

【问题讨论】:

【参考方案1】:

文件/etc/environment不是由shell执行的文件(类似于shell脚本);您不能在此文件中使用 $SOMETHING 引用。此文件中不替换变量。所以,

JAVA_HOME=/usr/lib/jvm/jdk1.7.0_51
PATH=$PATH:$JAVA_HOME/bin

第二行不会像这样工作。您必须输入确切的路径。

JAVA_HOME=/usr/lib/jvm/jdk1.7.0_51
PATH=...:/usr/lib/jvm/jdk1.7.0_51/bin

【讨论】:

或者,将 javac 的路径放在 /etc/profile 而不是 /etc/environment 中。见askubuntu.com/questions/78856/… @jesper 可以看看这个问题***.com/questions/21980558/…【参考方案2】:

javac 二进制文件(可能还有其他 java 二进制文件)不在您用户的 $PATH 环境变量中。有几种方法可以解决这个问题:

    /usr/lib/jvm/jdk1.7.0_51/bin 添加到用户的 $PATH 环境变量。您可以通过添加类似于 您用户的 .bash_profile 中的以下内容:

    export PATH=$PATH:/usr/lib/jvm/jdk1.7.0_51/bin

您必须重新启动终端会话才能使其生效。

从某个目录创建指向 java 二进制文件的符号链接 这已经是你路径的一部分(例如/usr/bin

 sudo ln -s /usr/lib/jvm/jdk1.7.0_51/bin/java /usr/bin/
 sudo ln-s /usr/lib/jvm/jdk1.7.0_51/bin/javac /usr/bin/

顺便说一句:/usr/lib/jvm/jdk1.7.0_51/bin. 中还有其他几个 java 可执行文件,请参见上面的 java 和 javac 的符号链接命令。您应该为您可能想要使用的任何其他可执行文件运行类似的命令。

直接在命令行使用全限定路径:

$ /usr/lib/jvm/jdk1.7.0_51/bin/javac

【讨论】:

【参考方案3】:

https://help.ubuntu.com/community/Java

你试过这个页面吗?当我需要 Java 信息​​时,我会去那里。您可能没有将安装的那个设置为默认值。

【讨论】:

【参考方案4】:

会不会是你修改路径变量后没有刷新shell?

如果您回显 $PATH,是否存在更改?

【讨论】:

嘿,当我在做 echo$PATH 更改时不存在

以上是关于Ubuntu 现在可以设置 java 路径的主要内容,如果未能解决你的问题,请参考以下文章

G006-OS-LIN-UBUN-02 Ubuntu Server 22.04 安装

VMware虚拟机中安装Ubuntu无法与主机共享上网

怎么安装ubuntu

java linux(ubuntu) 环境变量设置

Ubuntu安装

linux mint现在不能安装卸载和升级了