我试图在Ubuntuterminal上运行javac。 但是我得到以下几点:
$ javac The program 'javac' can be found in the following packages: * openjdk-6-jdk * ecj * gcj-4.4-jdk * gcj-4.6-jdk * gcj-4.5-jdk * openjdk-7-jdk Try: sudo apt-get install <selected package>
jdk已经安装并运行sudo apt-get install openjdk-6-jdk
表示0 upgraded, 0 newly installed, 0 to remove and 322 not upgraded.
我的jdk安装在/ usr / lib / jvm / java-6-open-jdk; 我可以从eclipse编译和运行一个java程序。 但是在使用terminal时,我遇到了这个前面提到的问题。
javac
二进制文件(可能还有其他的java二进制文件)不在用户的$PATH
环境变量中。 有几种方法可以解决这个问题:
将/usr/lib/jvm/java-6-open-jdk/bin
到您的用户的$PATH
环境变量中。 您可以通过在用户的.bash_profile
添加类似于以下内容的行来完成此操作:
export PATH=${PATH}:/usr/lib/jvm/java-6-open-jdk/bin
您将不得不重新启动终端会话才能生效。
从已经是路径的一部分的某个目录(例如/usr/bin
)创建到java二进制文件的符号链接
sudo ln -s /usr/lib/jvm/java-6-open-jdk/bin/java /usr/bin/
sudo ln -s /usr/lib/jvm/java-6-open-jdk/bin/javac /usr/bin/
顺便说一句:在/usr/lib/jvm/java-6-open-jdk/bin
中还有其他几个java可执行文件。 我已经在上面显示了java
和javac
的符号链接命令。 您应该对您可能要使用的任何其他可执行文件运行类似的命令。
直接在命令行中使用完全限定路径:
$ /usr/lib/jvm/java-6-open-jdk/bin/javac
显然,有一个优雅的,但特定于Ubuntu的解决方案来解决这个问题。 在Ubuntu系统上时,使用update-java-alternatives 。