我以前从未使用过 Maven,我正在按照说明进行操作 here.当我运行命令时
mvn integration-test -Pamp-to-war
它最初下载了一大堆依赖项,最后显示,
COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
[INFO] 1 error
我在 ubuntu 13.04 上。
如果你有什么想让我告诉你的,请告诉我。谢谢。
编辑
当我执行 echo $JAVA_HOME
时,我得到 /usr/lib/jvm/java-7-openjdk-i386/
当我执行 mvn -version
我明白了,
Apache Maven 3.0.4
Maven home: /usr/share/maven
Java version: 1.7.0_25, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-7-openjdk-i386/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.8.0-26-generic", arch: "i386", family: "unix"
另外,我发现了this problem faced by someone else .但我不确定如何处理指定的解决方案?
进一步编辑。
kraken@kraken-Inspiron-1545:/usr/lib/jvm/java-7-openjdk-i386$ ls -l
total 12
drwxr-xr-x 2 root root 4096 Sep 9 10:44 bin
lrwxrwxrwx 1 root root 41 Jul 4 2013 docs -> ../../../share/doc/openjdk-7-jre- headless
drwxr-xr-x 5 root root 4096 Oct 13 2013 jre
drwxr-xr-x 4 root root 4096 Oct 13 2013 man
最佳答案
我一直面临与 java 8 (ubuntu 16.04) 相同的问题,尝试使用 mvn
命令行进行编译。
我验证了我的 $JAVA_HOME
、java -version
和 mvn -version
。指向 /usr/lib/jvm/java-8-openjdk-amd64
似乎一切正常。
默认情况下,java-8-openjdk-amd64 似乎未完全安装,仅包含 JRE(尽管其名称为“jdk”)。
重新安装 JDK 即可。
sudo apt-get install openjdk-8-jdk
然后将一些新文件和新文件夹添加到/usr/lib/jvm/java-8-openjdk-amd64
并且mvn能够再次编译。
关于java - Maven 错误 :Perhaps you are running on a JRE rather than a JDK?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51007537/