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 路径的主要内容,如果未能解决你的问题,请参考以下文章