事由: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
未经书面授权,禁止转载

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐