第一步: 修改pom.xml
<packaging>war</packaging>
修改为war包

<!-- 去除SpringBoot内置Tomcat服务器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
我因为打包的时候自动下载的版本报错,所以自定义了一个版本
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.2</version>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin>
第二步: 修改启动项继承SpringBootServletInitializer
public class SuZhouArchivesApplication extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplication.run(SuZhouArchivesApplication.class, args);
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(SuZhouArchivesApplication.class);
}
}
之后 maven install打成war包即可
第三步: 修改tomcat的配置文件
直接把打成的war包,如testwar.war放入webapps下即可
conf下的server.xml
增加
<Context path="/" reloadable=“true” docBase=“war包名”/>
包名即为 testwar
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
**<Context path="/" reloadable="true" docBase="testwar"/>**
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html
Note: The pattern used is equivalent to using pattern="common" -->
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log" suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
这边的8080的可自己配置为自己想的端口号,如80
第三步: 发布
直接双击bin下的startup.bat即可
浏览器中敲
localhost即可访问到