Maven找不到java编译器的问题

当使用mvn package打包项目的时候,抛出下面这个错误:

1 [ERROR] Unable to locate the Javac Compiler in:
2   D:jdk..lib	ools.jar
3 Please ensure you are using JDK 1.4 or above and
4 not a JRE (the com.sun.tools.javac.Main class is required).
5 In most cases you can change the location of your Java
6 installation by setting the JAVA_HOME environment variable.

他妈的找不到编译器,环境变量也没问题,为什么提示的路径是那样的?接着我到IntelliJ IDEA 里去设置SDK,在classpath里没有lib目录下的tools.jar和其它jar包,只有jre/lib目录下的一些包,搞不懂为什么会这样子,然后手动把tools.jar和dt.jar加入classpath,重新mvn package还是不行。

他妈的都怒了。最后只好先运行一个包含main方法的类,估计是IDEA自己去设置了加载路径,main方法执行后,就可以打包了,他们的也不知道是怎么回事。

所以最终的解决方法是:

先运行包含main方法的类,或者整个项目编译一下,然后再mvn package就成功了。

----更新----

他妈的可能是编译的插件版本问题,使用的是maven3,但是他妈的编译插件的版本是2.3.2的,当时从其它地方直接copy的没注意到。

原文地址:https://www.cnblogs.com/yanyd/p/4264281.html