解决错误:Maven install找不到程序包、找不到符号
错误由来:
由于项目导入第三方Jar包,maven clean正常,maven install报错提示
Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile (default-compile) on project
XXXXXX程序包包找不到
XXXXXX找不到符号
程序结构如下图,报错中找不到的包就是src/lib下的第三方jar包。
解决方法:
在pom.xml中<plugins></plugins>中加入以下代码:
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
<compilerArgs>
<arg>-verbose</arg>
<arg>-Xlint:unchecked</arg>
<arg>-Xlint:deprecation</arg>
<arg>-bootclasspath</arg>
<arg>${java.home}/lib/rt.jar:${java.home}/lib/jce.jar</arg>
<!-- <arg>/Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk/Contents/Home/jre/lib/rt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk/Contents/Home/jre/lib/jce.jar</arg> -->
<arg>-extdirs</arg>
<arg>${project.basedir}/src/lib</arg>
</compilerArgs>
</configuration>
</plugin>
解析:
重点:
-
rt.jar包和jce.jar包路径不可出错,路径错误易导致致命错误:在类路径或引导类路径中找不到软件包 java.lang,请检查配置完成后显示的rt.jar包和jce.jar包路径。
(2)插件maven-compiler-plugin 的版本低于3.1 配置有差异
需要将compilerArgs 改成
<compilerArguments>
<extdirs>src/lib</extdirs>
</compilerArguments>
解决后console:
留下老母亲般的泪水~~
特别鸣谢:
参考博客:https://blog.youkuaiyun.com/wabyking/article/details/79700030,我花费了一个下午都没有找到解决方案终于找到了,特此感谢。