事由:Maven在使用自己的JAR包情况下,如果打包成JAR再去运行会出现NoClassDefFoundError错误,原因是这个JAR包没有打入你编译出来的JAR包里面。
解决办法:
一、Maven使用本地依赖
- scope要为system,让maven不要去下载
- systemPath 为你jar在本地的路径
<dependency>
<groupId>com.vas</groupId>
<artifactId>vas-lib</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/src/main/resources/lib/walle-cli-all.jar</systemPath>
</dependency>
二、打包插件配置
我这里使用的是SpringBoot,需要在打包插件上将包含SystemScope设置为true即可
<includeSystemScope>true</includeSystemScope>
然后运行打包就正常了。
版权所有:XuanRan
未经书面授权,禁止转载