java - 无法找到 Javac 编译器

标签 java maven ubuntu compilation classpath

我尝试mvn install 并收到这条消息:

Compilation failure
Unable to locate the Javac Compiler in:
  /usr/lib/jvm/java-7-openjdk-amd64/jre/../lib/tools.jar
Please ensure you are using JDK 1.4 or above and
not a JRE (the com.sun.tools.javac.Main class is required).
In most cases you can change the location of your Java
installation by setting the JAVA_HOME environment variable.

嗯,有一个打开的jdk,我也下载了另一个。我试图将 JAVA_HOME 指向两者,现在它已设置:

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

我还尝试选择使用 sudo update-alternatives --config java 打开的那些,但在其中使用不同的 jdk 版本时出现相同的错误。

我该如何解决?提前致谢。

最佳答案

似乎您的 PATH 没有正确获取...“echo $PATH”的输出是否包含 javac 所在的目录? 我建议如下:

打开终端并执行:

export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_03
export PATH=$PATH:$JAVA_HOME/bin
javac -version
which javac

如果 javac -version 仍然不起作用,请在/usr/local/bin 中创建一个指向您的 javac 二进制文件的符号链接(symbolic link):

cd /usr/local/bin
ln -s /usr/lib/jvm/jdk1.7.0_03/bin/javac javac

这应该让你开始运行...... 另一种方法是尝试通过您的包管理系统设置 java(例如“apt-get install java”或类似的东西)

关于java - 无法找到 Javac 编译器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10812668/

相关文章:

java - 公司Maven POM嵌套结构

java - 点击源码时IDEA反编译而不是从maven下载源码

maven - 如何在不先编译的情况下运行 maven failsafe

amazon-web-services - cfn-init 错误 : Unable to retrieve remote metadata : No credentials

ubuntu - 在 Ubuntu 上使用 open2300

java - 为什么通过主键进行简单的 Hibernate findOne() 需要这么长时间?

java - 需要改造 JSONAPI 转换器吗?

python - 在 Ubuntu 实例上安装 mpi4py 时出错

java - 同步块(synchronized block)内的同步块(synchronized block)

java - 使用 Eclipse 和 Maven 时缺少 tools-1.6.jar