springboot打war包,tomcat部署

项目环境简介:

        springboot版本:2.2.5.RELEASE

        tomcat版本:8.0.24

相对于jar包,原项目需要做如下修改:

1.修改启动类:原启动类需要继承SpringBootServletInitializer,并重写configure方法。

@SpringBootApplication
public class Application extends SpringBootServletInitializer{
	
	public static void main(String[] args) {
		SpringApplication.run(Application.class, args);
	}
	
	
	@Override
	protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
		return builder.sources(Application.class);
	}
}

2. 修改pom.xml文件:spring-boot-starter-tomcat参与编译和测试,不参与打包。

		<!-- web -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
			<exclusions>
				<exclusion>
					<groupId>org.springframework.boot</groupId>
					<artifactId>spring-boot-starter-tomcat</artifactId>
				</exclusion>
			</exclusions>
		</dependency>

		<!-- tomcat -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-tomcat</artifactId>
			<!-- 在编译和测试过程有效,打包时不会加入 -->
			<scope>provided</scope>
		</dependency>

3.  修改pom.xml,指定打war包,指定入口类。增加了<packaging>war</packaging>配置后,pom.xml文件可能会报错,但是不影响打包。

	<packaging>war</packaging>

    <!-- Package as a war -->
	<build>
		<finalName>springbootdemo</finalName>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
				<!--配置springboot入口类 -->
				<configuration>
					<mainClass>com.taikanglife.demo.Application</mainClass>
				</configuration>
			</plugin>
		</plugins>
	</build>

4. application.yml文件中 server.port和server.servlet.context-path 失效,具体运行时的端口的上下文依赖于tomcat服务的端口和war包在webapps文件夹中的文件名。

5. application.yml文件中 spring.profiles.active 有效,可以指定war包的测试或生产运行时环境。

6. 将打好的war包,放在tomcat的webapps文件夹下,运行tomcat的startup.bat或start.sh。访问ip:port/{war包文件名}/{项目内requestMapping路径}即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值