spring boot 部署 tomcat

Spring boot 部署到 tomcat


首先将spring boot启动类

public class Application {
	//启动类
	public static void main(String[] args) {
		SpringApplication.run(Application.class, args);
	}

}

修改成以下代码块,继承SpringBootServletInitializer并重写configure方法

@SpringBootApplication
@EnableTransactionManagement
public class Application extends SpringBootServletInitializer{
	//启动类
	public static void main(String[] args) {
		SpringApplication.run(Application.class, args);
	}
	//重写configure方法
	protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
		return builder.sources(Application.class);
	}
	
}

然后在pom.xml中添加依赖:

		<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>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-tomcat</artifactId>
			<scope>provided</scope>
		</dependency>
		<dependency>  
            <groupId>org.apache.tomcat</groupId>  
            <artifactId>tomcat-servlet-api</artifactId>  
            <version>8.0.42</version>  
            <scope>provided</scope>  
		</dependency>

在pom.xml文件中,project下面packaging标签改为

<packaging>war</packaging>

注意scope必须是provided

<build>
		<!--项目名-->
		<finalName>demo</finalName>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

注意配置文件中端口号要和tomcat一致
然后将项目maven run as
在这里插入图片描述
出现war成功
在这里插入图片描述
然后找到项目路径的target目录找到生成的war包
最后将war包仍到tomcat的webapps中
启动tomcat spring boot会自动生成对应的文件
若想去除项目名可以将war包改成ROOT且删除webapps的ROOT文件夹
希望这篇对于spring boot 部署到 tomcat上遇到错误的小伙伴有帮助

猜你喜欢

转载自blog.csdn.net/weixin_42118284/article/details/89108198