网上的方法都只能在运行测试时生效,打包运行无效
所以在打包运行时跑出错误 NoClassDefFoundError
项目依赖的一个jar包是在开发环境的maven 私有仓库获取的,在部署的环境中没法获取到,所以采取了将jar包放在项目目录下,pom中添加本地依赖的方式
1 通过scope:system引入
把jar包放在根目录下的lib包中,添加依赖
1  | <dependency>  | 
使用这种方式不可行,因为 scope:system和scope:system的依赖范围作用相同,即对于编译和测试classpath有效,运行时无效
2 将jar包装载到本地仓库
命令:
1  | mvn install:install-file -Dfile=/../lib/**.x.2.2-SNAPSHOT.jar -DgroupId=** -DartifactId=x -Dversion=2.2-SNAPSHOT -Dpackaging=jar  | 
pom依赖
1  | <dependency>  | 
  这样就可以在编译、测试、运行时都能被加载到
重新打包运行,异常消失。
Author: 哒琳
Permalink: http://blog.jieis.cn/2020/2640eeb1-081c-4f0c-923e-9cd3aad4955c.html
Comments