接手这个项目以来,没有在本地启动过,也没有在本地打过包,今天由于业务需要,需要在本地打一个war包,在idea里使用maven打包遇到的几个问题记录一下。
1.Missing artifact jdk.tools:jdk.tools:jar:1.8
首先遇到这个问题,看到缺少jar包,首先想到了是不是pom文件管理的jar包出现了问题,但是在pom文件中没有添加这个jar包,百度了一下,各种解决方案看了一下,将下面这个依赖加到pom文件中,这个问题没有出现:
<dependency>
<groupId>jdk.tools</groupId>
<artifactId>jdk.tools</artifactId>
<version>1.8</version>
<scope>system</scope>
<systemPath>${JAVA_HOME}/lib/tools.jar</systemPath>
</dependency>
但是这个不是这个问题的根本原因,具体要和下面的这个报错一起说
2.No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK
解决完第一个问题之后,紧接着继续打包报了这个错,一看就是jdk配置的问题,但是java的环境我早就安装过了,cmd打开,java -version,显示的都没问题。网上大概看了一下其他人的博客,问题出在这里,安装java的时候现在可以不用自己配置java环境,一样可以使用。所以环境变量那里没有配置过,导致jdk的环境在使用maven打包的时候报错
到这里解决办法很简单了,把安装java环境的时候需要配置的变量重新配置一下,就可以了,这个自己搜一下,网上很多教程,这里说个大概:
新建系统变量,变量名:JAVA_HOME,变量值:C:\Program Files\Java\jdk1.8.0_202(jdk 安装位置)
双击原本有的系统变量 Path,在里面添加 %JAVA_HOME%\bin,以及 %JAVA_HOME%\jre\bin,然后确定即可
新建系统变量,变量名:CLASSPATH,变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
这里可以看到配置java环境的时候其实配置了tools.jar这个jar包了,那是不是第一个错误也是因为java环境没有配置导致的呢,试了一下,竟然还报原来的错误,重启idea解决(重启大法)。至此这两个错误,这里其实是由于java环境配置的时候还是要自己配置一下环境变量这些。
记录一下,希望帮助到你