javac命令无法在linux环境中运行

时间:2017-08-19 12:37:04

标签: java linux jvm

我在linux系统上成功安装了java。当我从桌面运行hello world测试样本时它运行成功,但是几天后我再次尝试使用javac命令从终端运行它时,它给了我以下响应:

The program 'javac' can be found in the following packages:
 * default-jdk
 * ecj
 * gcj-5-jdk
 * openjdk-8-jdk-headless
 * gcj-4.8-jdk
 * gcj-4.9-jdk
 * openjdk-9-jdk-headless
Try: sudo apt install <selected package>

当我测试我的JAVA_HOME env。变量使用echo $JAVA_HOME显示: /usr/lib/jvm/java-8-openjdk-amd64

它还带有PATH变量。 当我运行which java命令时,它显示: /usr/lib/jvm/java-8-openjdk-amd64/bin/java

并使用命令whereis java显示: java: /usr/lib/jvm/java-8-openjdk-amd64/bin/java /usr/share/man/man1/java.1.gz

所以,我不明白这个问题,因为我自己应用了环境。变量,它显示一切都很完美,那么为什么javac命令不运行?任何人都可以研究这个问题。

3 个答案:

答案 0 :(得分:2)

核心问题是您没有安装在系统上的Java Develoment Toolkit(与Java运行时不同)。这意味着用于创建Java程序的实用程序(例如javac,jar等)不在您的系统上。

ThorbjørnRavnAndersen给出了Debian系列Linux系统的答案,这是RedHat系列系统的答案

CamelAwsS3Key

或者如果您使用最新的Fedora

yum install java-devel

答案 1 :(得分:1)

撤消您的环境设置并运行sudo apt install openjdk-8-jdk。 javac现在应该在你的道路上。

答案 2 :(得分:-1)

  

/ usr / lib中/ JVM / JAVA -8-的openjdk-AMD64 /斌/ java的

不是dir,它是一个优秀的。 尝试使用以下内容来使用javac:

/usr/lib/jvm/java-8-openjdk-amd64/bin/javac

/usr/lib/jvm/java-8-openjdk-amd64/bin/jstack