咱們都知道springBoot中已經內置了tomcat,是不須要咱們額外的配置tomcat服務器的,可是有時這也多是咱們的一個瓶頸,由於若是咱們須要對tomcat作集羣或者一些優化的話是很是不方便的,因此咱們仍然須要將springBoot的項目部署到外在的tomcat中,本文檔主要介紹一下如何將jar包轉換成war包。java
<groupId>org.morecare</groupId> <artifactId>mc-api-system</artifactId> <version>0.0.1-SNAPSHOT</version> <!--由Jar包轉爲War包--> <packaging>war</packaging> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.4.1.RELEASE</version> </parent> <name>mc-api-system</name> <url>http://maven.apache.org</url>
<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--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </dependency> <!--添加移除內嵌的tomcat模塊--> <dependency> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-servlet-api</artifactId> <version>8.0.39</version> </dependency>
<!-- 自定義war包名稱 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <configuration> <warSourceExcludes>src/main/resources/**</warSourceExcludes> <warName>parent</warName> </configuration> </plugin>
package org.morecare; import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.web.servlet.ServletComponentScan; import org.springframework.boot.web.support.SpringBootServletInitializer; /** * Spring Boot啓動類 * @author Administrator */ @SpringBootApplication @ServletComponentScan @MapperScan("org.morecare.*.mapper") public class SystemApplication extends SpringBootServletInitializer { //修改入口方法 繼承一個SpringBootServletInitializer類,而且覆蓋configure方法 @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(SystemApplication.class); } public static void main(String[] args) { SpringApplication.run(SystemApplication.class, args); } }
完成以上四步,再經過Maven的打包方法,就能夠把項目打包成War包,而後把項目部署到Tomcat下了web