Failed to execute goal org…的解决办法

2025-05-29 0 65

背景:本项目使用JDK1.8

编译maven工程的时候出现如下错误:

?

1
Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1

pom中如下配置maven插件,配置中声明使用JDK1.8:

?

1

2

3

4

5

6

7

8

9

10
<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-compiler-plugin</artifactId>

<version>3.1</version>

<configuration>

<verbose>true</verbose>

<fork>true</fork>

<executable>${JAVA8_HOME}/bin/javac</executable>

</configuration>

</plugin>

这里的${JAVA8_HOME}这个变量是在settings.xml中配置的,如下:

?

1

2

3

4

5

6
<profile>

<id>custom-compiler</id>

<properties>

<JAVA8_HOME>C:\\Program Files (x86)\\Java\\jdk1.8.0_73</JAVA8_HOME>

</properties>

</profile>

当然这里应该需要激活,所以settings.xml文件还应该有如下配置:

?

1

2

3
<activeProfiles>

<activeProfile>custom-compiler</activeProfile>

</activeProfiles>

从pom文件中CTRL点击变量JAVA8_HOME能跳到settings.xml中找到它的定义处,按理来说应该是能找到这个变量,出现上述问题并不是因为找不到这个变量。我将pom文件中的JAVA8_HOME这个变量直接用实际的路径替换,即替换为

?

1
C:\\Program Files (x86)\\Java\\jdk1.8.0_73\\bin\\javac

发现编译通过,这就奇怪了。

揭晓原因:

maven其实是有一个默认的仓库.m2仓库和默认的settings.xml配置文件,我们在这个默认的settings.xml文件中也添加了一个JAVA8_HOME的变量后,编译就通过了,这就说明,maven编译的时候找的不是我在idea中配置的我自定义的settings.xml,而是先找的它默认的那个。因为里面没有,所以之前找不到JAVA8_HOME,导致编译失败、

总结:maven编译的时候应该是先找的默认的settings.xml,如果找不到,才会去找我在idea的settings选项下配置的“User settings file”中配置的settings.xml文件。

解决办法:删掉maven默认的去找的那个settings.xml文件,这样自定义的文件就会生效了

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

原文链接:http://blog.csdn.net/u011734144/article/details/51894942

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 Failed to execute goal org…的解决办法 https://www.kuaiidc.com/115967.html

相关文章

发表评论
暂无评论