SpringBoot项目打成war包部署到外部Tomact运行

需求:使用SpringBoot自带的Tomact在线上环境部署特别不方便,尤其是只更改几个文件就得全部打包部署,所以需要把SpringBoot打成war包部署到Tomact

1.在pom.xml中


由原来的jar包改成war

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <!-- 屏蔽SpringBoot内置的Tomact -->
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-tomcat</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <scope>provided</scope>
        </dependency>
        
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope>
        </dependency>

2.启动类继承SpringBootServletInitializer
配置下面方法
@Override
  protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
    return application.sources(Application.class);
  }

3.将项目打包成war包        mvn package -DskipTests
注意:war包放到Tomact里面运行解压后,静态资源没有,我把本地的静态资源拷贝到resources文件下
4.隐藏项目名称,就是访问请求的时候去掉项目名
在Tomact安装目录的conf文件夹下找到server.xml

改成这样既可

SpringBoot项目打成war包部署到外部Tomact运行

上一篇:63 权限提升-Linux脏牛内核漏洞&SUID&信息收集


下一篇:SpringBoot项目打包war部署到服务器去掉项目名所遇到的坑