解决spring-boot-maven-plugin插件打包,springboot启动时报找不到主main问题

一:遇到的问题及解决方法

最近在搭建一个新项目时,使用spring-boot-maven-plugin插件打包,springboot项目在发布后启动时遇到找不到主main问题。

遇到这个问题当时感觉本地直接idea里启动springboot好好的,为什么用自动化发布工具发布后怎么就出现这个问题了呢?

就到线上打好的包解压看MANIFEST.MF文件里的内容如下:

Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Built-By: spy
Created-By: Apache Maven 3.3.9
Build-Jdk: 1.8.0_74

只有一些简单的内容并没有启动类,主类什么的?所以报那个找不到主main就非常明确了。所以就怀疑是不是spring-boot-maven-plugin打包插件里些配置没有指定导致的?

后来通过网上查询与看官网的文档还真是这个原因:

我们这个的原因的是由于在spring-boot-maven-plugin插件里没有指定goal导致的:

出现在问题时的配置是这个样的:


   
        org.springframework.boot
        spring-boot-maven-plugin
        2.1.4.RELEASE      
       
            true
       

   

   
        org.apache.maven.plugins
        maven-compiler-plugin
        3.8.1
       
            1.8
            1.8
       

   


指定goal后解决问题对应的配置如下:


   
        org.springframework.boot
        spring-boot-maven-plugin
        2.1.4.RELEASE
       
           
               
                    repackage
               

           

       

       
            true
       

   

   
        org.apache.maven.plugins
        maven-compiler-plugin
        3.8.1
       
            1.8
            1.8
       

   


修改goal后再去看MANIFEST.MF内容如下:
Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Built-By: spy
Start-Class: com.XX.Crm2cApplication
Spring-Boot-Classes: BOOT-INF/classes/
Spring-Boot-Lib: BOOT-INF/lib/
Spring-Boot-Version: 2.1.4.RELEASE
Created-By: Apache Maven 3.3.9
Build-Jdk: 1.8.0_74
Main-Class: org.springframework.boot.loader.JarLauncher

内容多出了,Main-Class和Start-Class至此遇到的问题解决了。

你可能感兴趣的:(springboot)