<packaging>war</packaging>
添加依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
排除自带tomcat,不排除也没有影响,只是多了个jar包
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
注释spring-boot-maven-plugin,使用maven-war-plugin
<!--
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<mainClass>bing.AuthorityApplication</mainClass>
<layout>ZIP</layout>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin> --> <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
修改启动类
//@SpringBootApplication
//public class SpringlearnApplication {
//
// public static void main(String[] args) {
// SpringApplication.run(SpringlearnApplication.class, args);
// }
//} @SpringBootApplication
public class SpringlearnApplication extends SpringBootServletInitializer { @Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(SpringlearnApplication.class);
} public static void main(String[] args )
{
SpringApplication.run(SpringlearnApplication.class, args);
}
}
打包生成war
从根目录启动,其中xxx为war的名称
<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true"> <Context path="" docBase="xxx" debug="0" reloadable="true"/> ...
</Host>