• 系统: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

maven打包时报No compiler is provided in this environment处理的更多相关文章

  1. eclipse Maven操作出现No compiler is provided in this environment.Perhaps you are running on a JRE rather than a JDK?

    右键 pom.xml -> Run as -> Maven install 后出现类似如下错误: 解决方法: 1)选择项目后,点击 eclipse 导航栏中 [Window]-->[ ...

  2. 【maven】maven的web项目打包报错:No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK

    打包过程中报错如下: No compiler is provided in this environment. Perhaps you are running on a JRE rather than ...

  3. No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK? idea maven 打包报错问题解决

    mvn clean install -X -Dmaven.test.skip=true -P dev 打包报错:No compiler is provided in this environment. ...

  4. maven打包错误:No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

    [INFO] Scanning for projects...[INFO]                                                                ...

  5. Maven No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK? 问题

    maven编译项目时出错,提示信息如下: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3 ...

  6. maven No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

    maven install项目时出错,提示信息如下: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-pl ...

  7. Maven异常: No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK解决(能力工场小马哥)

    问题描述: No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JD ...

  8. Maven构建项目出现No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

    No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK? 你应该 ...

  9. [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project triage: Compilation failure [ERROR] No compiler is provided in this environment.

    [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-c ...

随机推荐

  1. java数据结构-07栈

    一.什么是栈 栈是一种线性结构,栈的特点就是先进后出(FILO):就像弹夹装子弹一样,最先压进去的在最底下,最后才被射出.  二.相关接口设计  三.栈的实现 栈可以用之前的数组.链表等设计,这里我使 ...

  2. Java学习的第三十二天

    1. 2.综合例题没太看懂 3.明天复习第十二章

  3. ERROR: No matching distribution found for cv2

    ImportError: No module named cv2和No matching distribution found for cv2的问题 原因 这个是由于没有导入opencv库导致的 解决 ...

  4. Flask中的MTV架构之Templates

    Flask 中的MTV架构之Templates 关注公众号"轻松学编程"了解更多. 1.Templates(模板引擎) 1.1 说明 ​ 模板文件就是按照特定规则书写的一个负责展示 ...

  5. Netty源码解析 -- ChannelPipeline机制与读写过程

    本文继续阅读Netty源码,解析ChannelPipeline事件传播原理,以及Netty读写过程. 源码分析基于Netty 4.1 ChannelPipeline Netty中的ChannelPip ...

  6. mysql存储过程加事务

    create procedure sp_sw2() begin declare error int default 0; declare continue handler for SQLEXCEPTI ...

  7. Python - 生成 requirement.txt 文件

    前言 Python项目中,一般都会有一个 requirements.txt 文件 这个文件主要是用于记录当前项目下的所有依赖包及其精确的版本号,以方便在一个新环境下更快的进行部署 如何生成 requi ...

  8. 消息队列--ActiveMQ集群部署

    一.activeMQ主要的部署方式? 1,默认的单机部署(kahadb) activeMQ默认的存储单机模式,如果配置文件不做修改,则默认使用此模式.以本地的kahadb文件的方式进行存储,性能完全依 ...

  9. 英特尔与 Facebook 合作采用第三代英特尔® 至强® 可扩展处理器和支持 BFloat16 加速的英特尔® 深度学习加速技术,提高 PyTorch 性能

    英特尔与 Facebook 曾联手合作,在多卡训练工作负载中验证了 BFloat16 (BF16) 的优势:在不修改训练超参数的情况下,BFloat16 与单精度 32 位浮点数 (FP32) 得到了 ...

  10. jquery DataTable插件使用自定义搜索

    $(function () { $("#pk_status").change(function () { valid = $(this).val(); if(valid){ tab ...