[英]Ubuntu now able to set java path
我已经在/ 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和其他程序。 我已经对其进行了足够的搜索,但是仍然无法解决此问题。
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可执行文件/usr/lib/jvm/jdk1.7.0_51/bin.
请参见上面的java和javac的symlink命令。 您应该为可能要使用的任何其他可执行文件运行类似的命令。
直接在命令行上使用标准路径:
$ /usr/lib/jvm/jdk1.7.0_51/bin/javac
/etc/environment
文件不是外壳程序执行的文件(类似于外壳程序脚本); 您不能在此文件中使用$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
https://help.ubuntu.com/community/Java
您是否尝试过此页面? 当我需要Java信息时,该去哪里。 您可能没有将安装的计算机设置为默认计算机。
难道是您在更改路径变量后没有刷新外壳程序吗?
如果回显$ PATH,是否存在更改?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.