maven - Maven CLI 编译错误:此环境中未提供编译器
问题描述
我正在mvn compile
从终端在 Solaris 服务器上编译一个简单的 maven 应用程序,我收到以下错误:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project maven-demo: Compilation failure
[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
JAVA_HOME 指向 /home/userName/Java/jdk1.8.0_201
我发现的所有解决方案都涉及 eclipse 偏好。我需要从终端编译它,有什么帮助吗?
更新:这是输出mvn -version
Apache Maven 3.6.0 (97c98ec64a1fdfee7767ce5ffb20918da4f719f3; 2018-10-24T20:41:47+02:00)
Maven home: /home/userName/Maven/apache-maven-3.6.0
Java version: 1.8.0_112, vendor: Oracle Corporation, runtime: /usr/jdk/instances/jdk1.8.0/jre
Default locale: en, platform encoding: ISO646-US
OS name: "sunos", version: "5.11", arch: "sparcv9", family: "unix"
解决方案
如果您使用的是 Linux/Red-hat 版本,那么只有
-->yum install java-1.8.0-openjdk-headless.x86_64
-->yum install java-1.8.0-openjdk-devel.x86_64
-->update-alternatives --config java #pick java 1.8
然后按 1
-->update-alternatives --config javac #pick java 1.8
然后按 2
谢谢你
推荐阅读
- java - Jackson JsonSchema - 对象作为模式中的字符串
- aws-lambda - Aws - 长时间运行作业的最佳实践
- security - 如何更新 package-lock.json 中的依赖项
- html - 格式良好的 html5 加载速度是否比糟糕的加载速度快?
- jquery - 如何在第一次隐藏 DataTables 标题中的排序图标
- angular - Angular 6:如何并行进行一组服务调用并在所有调用完成后处理数据
- ios - 如何在 Cordova 中压缩(压缩)SQLITE 数据库文件?
- java - 错误膨胀类片段Android kotlin
- git - VSCode 可以在我编辑原始文件时向我显示一些指示吗?
- python - 在迭代时重新分配迭代器的值