我尝试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版本的错误。
我该如何解决?提前谢谢。
答案 0 :(得分:18)
看起来你的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二进制文件的符号链接:
cd /usr/local/bin
ln -s /usr/lib/jvm/jdk1.7.0_03/bin/javac javac
这会让你跑步...... 另一种方法是尝试通过包管理系统设置java(例如“apt-get install java”或类似的)
答案 1 :(得分:1)
在Jenkins运行maven构建时,我在ubuntu机器上遇到了类似的错误。如果输出' javac -version'提示以下消息:
"该节目' javac'可以在以下包中找到: 默认情况下,JDK 欧洲法院 GCJ -5- JDK 的openjdk -8- JDK-无头 GCJ-4.8 JDK GCJ-4.9-JDK 的openjdk -9- JDK-无头 尝试:apt install"
然后你可以安装" openjdk-8-jdk-headless"使用:
这解决了我的问题,maven构建完成了。