天天看點

SpringBoot打包并部署到TomcatSpringBoot打包并部署到Tomcat

文章目錄

  • SpringBoot打包并部署到Tomcat
    • 1 修改入口類
    • 2 修改.pom
    • 3 打包
    • 4 部署到Tomcat

SpringBoot打包并部署到Tomcat

得益于約定大于配置,SpringBoot開發起來非常迅速,而打包也非常簡單,隻需要進行少許配置即可。

1 修改入口類

繼承org.springframework.boot.web.servlet.support.SpringBootServletInitializer類,覆寫configure()方法,用于打包。

@SpringBootApplication
public class MutildataApplication extends SpringBootServletInitializer {

    public static void main(String[] args) {
        SpringApplication.run(MutildataApplication.class, args);
    }
	
    // 用于建構war檔案并進行部署
    @Override
    protected SpringApplicationBuilder configure(
        SpringApplicationBuilder builder) {
        return builder.sources(this.getClass());
    }
}
           

2 修改.pom

首先指定打包方式,可選jar/war,這裡打包為war包。

<packaging>為<project>标簽的子标簽,即與<dependencies>同級。

簡單描述下war包與jar包的差別:

  • .war:包含可以部署在任何servlet/jsp容器上的Web應用程式。war檔案包含有jsp、html、JavaScript,以及構成Web應用程式的其他資源。
  • .jar:包含lib、class、properties等檔案。

是以可以将單獨的war包直接部署到Web容器,向外提供服務,非常易于部署。

另外排除掉内嵌的tomcat容器依賴,以便部署到自己已有的tomcat容器。

<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>
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>3.1.0</version>
    <scope>provided</scope>
</dependency>
           

3 打包

方式一:

進入項目根目錄,執行maven指令

mvn clean package
           

方式二:

在IDEA右側Maven Projects小視窗中,先執行clean指令,再執行package指令。

SpringBoot打包并部署到TomcatSpringBoot打包并部署到Tomcat

經過以上兩種方式之一,此項目根目錄則會生成target檔案夾,并在target檔案夾的根目錄生成war包。下面隻需要将這一個war包部署到Tomcat即可。

SpringBoot打包并部署到TomcatSpringBoot打包并部署到Tomcat

這裡去掉版本号,保留項目名,即mutildata.war

4 部署到Tomcat

将war包複制到Tomcat根目錄下的webapp檔案夾中,并執行bin目錄下的startup.bat腳本以啟動Tomcat,等待啟動完成,通路http://localhost:8080/mutildata檢視頁面。

SpringBoot打包并部署到TomcatSpringBoot打包并部署到Tomcat

到此為止,我們的SpringBoot就算是部署成功了!

繼續閱讀