如何將Spring Boot項目打包部署到外部Tomcat


1.項目打包

    項目開發結束后,需要打包部署到外部服務器的Tomcat上,主要有幾種方式。

(1)生成jar包

cd 項目跟目錄(和pom.xml同級)
mvn clean package
## 或者執行下面的命令
## 排除測試代碼后進行打包
mvn clean package -Dmaven.test.skip=true
打包完成后jar包會生成到target目錄下,命名一般是 項目名+版本號.jar

啟動jar包命令

java -jar target/spring-boot-scheduler-1.0.0.jar
這種方式,只要控制台關閉,服務就不能訪問了。下面我們使用在后台運行的方式來啟動:

nohup java -jar target/spring-boot-scheduler-1.0.0.jar &
也可以在啟動的時候選擇讀取不同的配置文件

java -jar app.jar --spring.profiles.active=product

也可以通過IDEA的Maven工具生成,點擊Lifecycle-install,生成jar

(2)生成war包

  (1)修改打包類型為war:<packaging>war</packaging>

    <packaging>war</packaging>

      (2)添加spring-boot-starter-tomcat依賴,scope設置為provided

<dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-tomcat</artifactId>
        <scope>provided</scope>
</dependency>

  (3)注冊啟動類

  創建ServletInitializer.java,繼承SpringBootServletInitializer ,覆蓋configure(),把啟動類Application注冊進去。外部web應用服務器構建Web Application Context的時候,會把啟動類添加進去。

public class ServletInitializer  extends SpringBootServletInitializer {
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(BootdemoApplication.class);
    }
}

  同樣也是兩種方式執行:

  (1)mvn clean package -Dmaven.test.skip=true

  (2)通過IDEA的Maven工具生成,點擊Lifecycle-package,生成war

2.項目部署

  無論是用哪種方式生成,最終都是為了進行部署,war可以直接拷到tomcat的webapps目錄下,啟動Tomcat即可。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM