第一步:
修改pom文件打WAR包:
<!--自定義tomcat打包成war-->
<packaging>war</packaging>
第二步:因爲內嵌的tomcat在SpringBoot的web項目中,所以去除方法如下:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!--去除內嵌tomcat-->
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
第三步:加入tomcat的依賴:
<!-- servlet依賴的jar包start -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
<!-- servlet依賴的jar包end -->
<!-- jsp依賴jar包start -->
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>javax.servlet.jsp-api</artifactId>
<version>2.3.1</version>
</dependency>
<!-- jsp依賴jar包end -->
第四步:
在plugins標籤裏面新加
<!--maven打war插件-->
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>3.0.0</version>
</plugin>
還是整個build標籤都貼上吧:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>1.4.2.RELEASE</version>
</plugin>
<!--myBatis逆向工程插件-->
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
<configuration>
<verbose>true</verbose>
<overwrite>true</overwrite>
</configuration>
</plugin>
<!--maven打war插件-->
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>3.0.0</version>
</plugin>
</plugins>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.*</include>
</includes>
</resource>
<resource>
<directory>src/main/webapp</directory>
<targetPath>META-INF/resources</targetPath>
<includes>
<include>**/*.*</include>
</includes>
</resource>
</resources>
</build>
最重要一步 (寫一個類繼承SpringBootServletInitializer,重寫configure方法):
* @date:2020/5/28 9:37
* @author:robin
*/
@SpringBootApplication
public class ExportApplication extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplication.run(ExportApplication.class,args);
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(this.getClass());
}
}
last but not least:
添加本地tomcat。
啓動,測試效果 ,出現這個還不能說明部署成功,然後再訪問jsp頁面:
成功訪問如下:
好的,大功告成,特別感謝曾經看到的博主的一篇文章。
美中不足:
tomcat運行過程中會出現如下信息,歡迎大神賜教,不勝感激。
8-May-2020 10:22:42.942 SEVERE [RMI TCP Connection(3)-127.0.0.1] org.apache.catalina.startup.ContextConfig.processAnnotationsJar Unable to process Jar entry [module-info.class] from Jar [file:/D:/secondKill/wechatpayjsapi/target/wxpay-0.0.1-SNAPSHOT/WEB-INF/lib/jackson-datatype-jdk8-2.10.3.jar] for annotations
打包發佈測試一下: