Spring Boot 默認打包為jar,受公司發布系統限制,不允許上傳jar包,需要轉為war和zip包,因此在使用Spring Boot時需要轉為war。
實現方式:
1、需要App類繼承SpringBootServletInitializer,並重寫“protected SpringApplicationBuilder configure(SpringApplicationBuilder builder)” 方法。
Starter.java 文件:
@SpringBootApplication
@ComponentScan("com.xxx.tour.settlement")
public class Starter extends SpringBootServletInitializer {
public static void main(String[] args) throws Exception {
SpringApplication.run(Starter.class, args);
System.setProperty("java.awt.headless", "false");
Desktop.getDesktop().browse(new URI("http://127.0.0.1:8080"));
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(Starter.class);
}
}
2、修改Site的pom文件
<packaging>war</packaging>
3、添加web.xml 文件
如果出現web.xml is missing and <failOnMissingWebXml> is set to true 異常,需要添加web.xml 文件。
Spring Boot 默認是可以不需要web.xml 的,公司框架要求需要web.xml 文件,會讀取該文件下相關配置信息。