详解springboot项目带Tomcat和不带Tomcat的两种打包方式

1,带Tomcat的打包方式

1.1, 在pom.xml文件添加以下配置(目的:自定main入口和跳过Junit代码)


  
    
    
      org.springframework.boot
      spring-boot-maven-plugin
      
      
        com.sh.tool.YnToolApplication
      
      
        
          
            repackage
          
        
      
    
    
    
      org.apache.maven.plugins
      maven-surefire-plugin
      2.4.2
      
        true
      
    
  

1.2,在命令行窗口输入命令 :

mvn clean package

1.3,结果会在项目的target路径下生成一个.jar文件,将.jar文件复制到任意路径,打开命令窗口进入.jar所在路径,执行以下命令

java -jar <.jar文件名>

执行成功之后就可以访问controller接口了。

2,去除Tomcat的打包方式

2.1,配置pom.xml文件,加上如下配置

war



  org.springframework.boot
  spring-boot-starter-tomcat
  provided
 


  
    
    
      org.apache.maven.plugins
      maven-surefire-plugin
      2.4.2
      
        true
      
    
  

PS:网上有些说要加以下配置,但是我测试不加也是可以的


  
      
      
        org.apache.maven.plugins
        maven-war-plugin
        2.6
        
          false
        
      
      
      
        org.apache.maven.plugins
        maven-compiler-plugin
        3.1
        
          1.7
          1.7
        
      
  

2.2,修改启动类为如下

@SpringBootApplication
public class YnToolApplication extends SpringBootServletInitializer {

  public static void main(String[] args) {
    SpringApplication.run(YnToolApplication.class, args);
  }

  @Override
  protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
    return builder.sources(YnToolApplication.class);
  }
}

 2.3,执行以下命令打包,结果将在target目录下生成.war文件

mvn clean package

 2.4,将war包放到Tomcat的webapps路径下,启动Tomcat,然后访问就可以了。PS:war包部署的默认访问方式和jar包的有点不同,war包访问URL需要加上项目名,例如:http://localhost:8989/yn-tool-0.0.1-SNAPSHOT/index

到此这篇关于详解springboot项目带Tomcat和不带Tomcat的两种打包方式的文章就介绍到这了,更多相关springboot Tomcat打包内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

你可能感兴趣的:(详解springboot项目带Tomcat和不带Tomcat的两种打包方式)