springboot多模块打包报错问题根因分析:Unable to find main class

问题背景:

项目结构为springboot多模块,其中有四个模块bean、utils、user、ems,其中user和ems模块为主程序,包含启动类,其他两个模块为其服务,提供依赖

springboot多模块打包报错问题根因分析:Unable to find main class_第1张图片

问题分析:

查看utils和bean模块的目录结构,发现里边添加了打包插件,但是没有主启动类,所以插件在打包可执行jar的时候找不到主启动类报错!
通过执行mvn package也可以发现,其实普通的jar包已经存在,可执行的jar包只有1kb,是无法可用的。

springboot多模块打包报错问题根因分析:Unable to find main class_第2张图片


        
            
                org.springframework.boot
                spring-boot-maven-plugin
                2.6.8
                
                    true
                
                
                    
                        
                            repackage
                        
                    
                
            
        
    

总结:

对于多模块的springboot项目
如果只是提供依赖,打包成普通jar包就可以了,不需要可执行的jar包,因此就不要springboot打包插件和主启动类,相当于该模块为一个普通的maven项目
如果即需要普通的jar,也需要可执行的jar,就需要添加打包插件,并且增加springboot主启动类,然后就打包成两个jar包

你可能感兴趣的:(#,maven,spring,boot,java,spring)