mvn package生成的jar缺少dependency的class文件
来源:4-1 服务docker化(上)
爱笑的小熊猫
2021-11-29
按着老师视频给course-dubbo-service设置好了spring-boot-maven-plugin的repackage 按道理运行mvn package生成的jar应该包含其他dependency比如来自course-dubbo-service-api module的CourseDTO class
但是jar里面是缺少CourseDTO 这个故障也导致了运行时候抛出ClassNotFound异常
能否请经验丰富的老师或者同学给些排查错误的建议 非常感谢!
我的代码可在这里找到:https://github.com/cutePanda123/online-learning-platform-server
我做了如下验证和排查
course-dubbo-service的pom.xml指定了course-dubbo-service-api作为dependency
比较了mvn pacakge生成的xxx.jar和xxx.jar.original文件 前者确实包含更多文件但是没有CourseDTO的class
具体运行过程和排错过程如下
生成jar文件的方式:在project根目录下运行mvn -pl course-dubbo-service package
查错过程:jar tf course-dubbo-service/target/course-dubbo-service-1.0-SNAPSHOT.jar | grep CourseDTO 没有任何输出
1回答
-
刘果国
2021-11-29
mvn的各个module的依赖package的结果是以jar的形式出现的,只有当前module的才是class形式。所以你要去找CourseDTO所在module的jar包
022021-12-02
相似问题