配置SpringBoot方便的切换jar和war的方法示例

网友投稿 277 2023-01-14


配置SpringBoot方便的切换jar和war的方法示例

网上关于如何切换,其实说的很明确,本文主要通过profile进行快速切换已实现在不同场合下,用不同的打包方式。

jar到war修改步骤

pom文件修改

packaging配置由jar改为war

排除tomcat等容器的依赖

配置web.xml或者无web.xml打包处理

入口类修改

添加ServletInitializer

特别注意:当改成war包的时候,application.properties配置的server.port和server.servlet.context-path就无效了,遵从war容器的安排。

配置pom

配置packaging

${pom.package}

修改build

${pom.packageName}

org.apache.maven.plugins

maven-war-plugin

3.2.2

false

排除容器

org.springframework.boot

spring-boot-starter-web

org.springframework.boot

spring-boot-starter-tomcat

配置profile

jar

true

jar

${project.artifactId}-${project.version}

dev

org.springframework.boot

spring-boot-starter-tomcat

war

war

${project.artifactId}

linux

org.springframework.boot

spring-boot-starter-tomcat

provided

javax.servlet

javax.servlet-api

4.0.1

provided

</profiles>

修改入口类

入口类继承SpringBootServletInitializer

重写configure方法

使用@Profile注解,当启用war配置的时候,初始化Servlet。

public class Application extends SpringBootServletInitializer {

public static void main(String[] args) {

SpringApplication.run(Application.class, args);

}

@Profile(value = {"war"})

@Override

protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {

return application.sources(Application.class);

}

}


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java实现指定线程执行顺序的三种方式示例
下一篇:java实现dijkstra最短路径寻路算法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~