maven打包时报No compiler is provided in this environment处理
系统:macOS
开发工具:Idea
问题描述:在idea中执行mvn clean install时报No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?报错,打包失败。
问题处理:
1、按照网上的方法检查了idea的java配置,确认配置的是JDK而不是JRE,检查方法可参考(https://blog.csdn.net/tolcf/article/details/50803414),尝试切换idea的JDK配置问题依然存在,又尝试在系统终端执行 mvn clean install 也报同样的错误;
No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
2、只能再次求助百度,偶然找到一篇文章(https://stackoverflow.com/questions/21099072/eclipse-maven-error-no-compiler-is-provided-in-this-environment)从里面得到一点启发尝试执行 mvn help:system 查看了一下系统的各种变量和属性,发现PATH中居然不包含JAVA_HOME路径,以前明明配置过的
PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:
但奇怪的是此时执行java -version是居然可以正常获取java版本(此处原因不详),尝试执行了source /etc/profile,再次执行mvn clean install打包成功了!顿时一阵欣喜,然后再次在idea中执行时又失败了!!!
3、再次查看了一下环境变量,JAVA_HOME又没了!不过现在知道问题原因就好解决了,查看自己的默认shell echo $SHELL,bash 编辑.bash_profile,zsh编辑.zshrc,在最下面添加
source /etc/profile
编辑保存后不要忘了执行source ~/.zshrc,再次在idea中执行打包命令就成功了!遗留问题:目前看问题本质就是环境变量失效了,但失效原因不清楚,还有配置/etc/profile时居然不是全局生效了,也很奇怪,暂不深究了,以后慢慢研究
补充知识:
1、java环境变量配置
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/ CLASSPAHT=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar PATH=$JAVA_HOME/bin:$PATH: export JAVA_HOME export CLASSPATH export PATH
2、查看默认shell
echo $SHELL
最新文章
- emoji和utf8mb4字符集
- Mybatis学习——传递Map型参数
- Oracle 安装 检查操作系统版本 必须是 5.0 5.1 的解决办法
- SQL Server 2000/2005 分页SQL — 单条SQL语句
- MAC系统操作指令汇总
- K8S集群技术
- CF607B Zuma(区间dp)
- FZU - 1688 Binary land
- 把object转成JSONObject JSON.toJSON
- Windows下及Mac下的IntelliJ IDEA快捷键
- python_day1_python第一个程序 hello world
- thinphp中volist嵌套循环时变量$i 被污染问题,key=";k";
- Codeforces Round #303 (Div. 2) D. Queue 傻逼题
- 【Android UI设计与开发】使用ViewPager实现欢迎引导页面
- SQL语句获取时间的方法
- Docker Libnetwork Bridge插件实现代码分析----创建网络部分
- Linux中安装MySql 5.7.21的详细操作步骤
- Java面试——多线程面试题总结
- OTN 交换&;amp; P-OTN有效减少100G 网络成本 (三)
- 基于Innobackupex的全备恢复