1. 程式人生 > >spring boot之專案打包部署

spring boot之專案打包部署

1.修改pom.xml打包方式以及包名相關資訊

<!--打包方式-->
<packaging>war</packaging>
<build>
		<!--buil下新增包名-->
		<finalName>ProjectName</finalName>
</build>

2.修改spring boot啟動類的啟動方式
啟動類需要繼承SpringBootServletInitializer ,並重寫其configure方法,如下:

package com.yang.mb;

import org.springframework.
boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; import org.springframework.transaction.annotation.EnableTransactionManagement;
@SpringBootApplication @EnableTransactionManagement public class MbApplication extends SpringBootServletInitializer { public static void main(String[] args) { SpringApplication.run(MbApplication.class, args); } /** * 需要把web專案打成war包部署到外部tomcat執行時需要改變啟動方式 */ @Override protected SpringApplicationBuilder configure
(SpringApplicationBuilder builder) { return builder.sources(MbApplication.class); } }

3.使用maven工具打包
開啟idea右側maven工作欄,雙擊package,打包完成後會將war輸出到target目錄下
在這裡插入圖片描述
4.war包部署
將war拷貝到tomcat的webapps目錄下,重啟tomcat,tomcat會自動解壓並部署。
5.啟動時
當tomcat部署多個spring boot 應用時啟動可能會報

org.springframework.jmx.export.UnableToRegisterMBeanException: Unable to register MBean

需要加上專案的標識,分別在專案的配置檔案application.properties檔案新增:

#新增專案標識,保證每個專案唯一
spring.jmx.default-domain=

然後重啟tomcat即可。