一、說明
- 本文接上一篇內容,在上一篇基礎上完成部署到Tomcat的過程
- 本文學習資源來自SpringBoot官網
二、 代碼修改
1. 準備好上節完成的代碼
2. 把啟動類從SpringBootServerletInitializer派生,用來支持WAR部署
Application.java修改後如下:
<code>package hello;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.boot.builder.SpringApplicationBuilder;import org.springframework.boot.web.support.SpringBootServletInitializer;@SpringBootApplicationpublic class Application extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(Application.class); } public static void main(String[] args) { SpringApplication.run(Application.class, args); }}/<code>
3. 設置主類
gradle
在build.gralde裡添加:
<code>mainClassName="hello.Application"/<code>
maven
在pom.xml裡添加:
<code><start-class>hello.Application/<start-class>/<code>
4. 打包支持WAR
gradle build.gradle
<code>apply plugin: 'war'apply plugin: 'application'/<code>
maven pom.xml
<code><packaging>war/<packaging>/<code>
修改後的build.gradle
<code>buildscript { ext { springBootVersion = '1.5.8.RELEASE' } repositories { mavenCentral() } dependencies { classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") }}apply plugin: 'java'apply plugin: 'eclipse'apply plugin: 'org.springframework.boot'apply plugin: 'war'apply plugin: 'application'group 'com.test'version '1.0-SNAPSHOT'sourceCompatibility = 1.8mainClassName="hello.Application"repositories { mavenCentral()}dependencies { compile('org.springframework.boot:spring-boot-starter-web') testCompile('org.springframework.boot:spring-boot-starter-test')}/<code>
三、打包
maven
<code>mvn package/<code>
gradle
<code>gradle clean build/<code>
可以看到build/libs裡生成了war包
四、部署
可以通過tomcat manager來部署:
或者直接拷到tomcat的webapps下。
閱讀更多 編程圈 的文章