SpringBoot打包的两种方式 - jar方式 和 war 方式

Posted 霏ིྀ宇ིྀ

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot打包的两种方式 - jar方式 和 war 方式相关的知识,希望对你有一定的参考价值。

SpringBoot打包的两种方式 - jar方式 和 war 方式

首先:配置maven环境变量

新建系统变量

MAVEN_HOME
 E:\\JDK\\mave\\apache-maven-3.8.4

在Path写入%MAVEN_HOME%\\bin

jar 方式

执行 mvn install 命令开始打包

生成的文件在target

运行打包好的 jar 包:地址为绝对地址

命令为:

java -jar F:\\新建文件夹\\HQYJ-git\\learning-spring-boot\\sprtingboot\\target\\sprtingboot-0.0.1-SNAPSHOT.jar

war 方式

首先:将打包方式改为 War

解决 Tomcat Jar 冲突的问题

Pom 引入 spring-boot-starter-tomcat,设置 scope 为 provided,只在编译和测试阶段起作用,打包时候做了 Exclude 操作,使用外置 Tomcat 相关 Jar;


<!-- tomcat -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
    <scope>provided</scope>
</dependency>

解决无 web.xml 的问题

package com.feiyu.sprtingboot;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;

@SpringBootApplication
public class Application extends SpringBootServletInitializer
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) 
        return  builder.sources(Application.class);
//        return super.configure(builder);
    

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


创建war 包

  1. 执行 mvn clean package 命令
  2. 重命名 war 包,例如spring.war
  3. 放在tomcat的webapps文件夹中
  4. 运行startup.bat
  5. 在http://127.0.0.1:8080+项目名称(pring.war)/+你的test/helloWorld

以上是关于SpringBoot打包的两种方式 - jar方式 和 war 方式的主要内容,如果未能解决你的问题,请参考以下文章

maven的两种可运行jar打包方式。1内置依赖,2外部依赖。

Maven项目依赖外部jar进行打包的两种方式

Springboot中IDE支持两种打包方式,即jar包和war包

SpringBoot项目发布到服务器的两种方式war和jar

SpringBoot项目的两种打包方式分析

SpringBoot项目打包war发布到Jetty9