Use tomcat to deploy SpringBoot war package in centos environment

Use tomcat to deploy SpringBoot war package in centos environment

Prepare war package

1. Prepare the existing SpringBoot project and add dependencies in pom

1) Set the packaging format to war

 <packaging>war</packaging>

2) Exclude the tomcat embedded in SpringBoot

 <!-- When deploying in war package, you need to exclude the embedded tomcat -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-tomcat</artifactId>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>javax.servlet-api</artifactId>
			<version>3.1.0</version>
		</dependency>

3) Configure plugin

From the original

<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

Configure

<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
				<configuration>
					<fork>true</fork>
					<!-- Add jvm parameters -->
					<jvmArguments>Dfile.encoding=UTF-8</jvmArguments>
					<!-- Specify the entry class -->
					<mainClass>com.peko.filemanager.Application</mainClass>
				</configuration>
			</plugin>
		</plugins>
	</build>

2. Configure the startup class

From the original

@SpringBootApplication
public class Application {
 
	public static void main(String[] args) {
		SpringApplication.run(Application.class, args);
	}
}

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);
	}
}

3. Packaging with Maven Tools

Clean first, then package

After success, you can find the packaged war package in the target folder

Copy it and then change the name. Here I changed it to helloworld.war

Deploy to tomcat on centos

1. First, install tomcat

https://blog.csdn.net/piano_diano/article/details/116938060

2. Upload the war package to tomcat/webapps using the sftp tool

Restart tomcat

systemctl restart tomcat

Then open the tomcat management interface

You can see that the project is in the startup state. If it is in the shutdown state, go to the log under tomcat/logs to see what error is reported.

Note: If the war file is deployed in tomcat, the port number and other information originally configured in the yml file will be invalid.

helloworld project address: https://gitee.com/ShyHour/hello-world

The above is the details of using tomcat to deploy SpringBoot's war package in the centos environment. For more information about tomcat deploying SpringBoot's war package, please pay attention to other related articles on 123WORDPRESS.COM!

You may also be interested in:
  • Springboot multi-module multi-environment configuration file problem (dynamic configuration of production and development environment)
  • Detailed steps for building an SSM development environment based on SpringBoot in IntelliJ IDEA
  • SpringBoot environment configuration knowledge summary
  • Clever use of profiles in springboot yml (multi-environment configuration for beginners)
  • Tutorial on deploying springboot package in linux environment using docker
  • Detailed explanation of SpringBoot+docker environment variable configuration
  • Detailed tutorial on building a springboot selenium web page file to image environment
  • Springboot multi-environment switching method
  • SpringBoot environment construction and first program running (novice tutorial)
  • Matplotlib visualization custom colors to draw beautiful statistical graphs

<<:  Modify the style of HTML body in JS

>>:  The concept and characteristics of MySQL custom variables

Recommend

MySQL grouping queries and aggregate functions

Overview I believe we often encounter such scenar...

Three.js realizes Facebook Metaverse 3D dynamic logo effect

Table of contents background What is the Metavers...

Idea configures tomcat to start a web project graphic tutorial

Configure tomcat 1. Click run configuration 2. Se...

MySQL whole table encryption solution keyring_file detailed explanation

illustrate MySql Community Edition supports table...

JavaScript to achieve a simple magnifying glass effect

There is a picture in a big box. When you put the...

Detailed explanation of the application of the four states of hyperconnection

Although you think it may be a browser problem, i...

Detailed analysis of GUID display issues in Mongodb

Find the problem I recently migrated the storage ...

Detailed explanation of redundant and duplicate indexes in MySQL

MySQL allows you to create multiple indexes on th...

Nginx signal control

Introduction to Nginx Nginx is a high-performance...

JavaScript to achieve mouse tailing effect

Mouse effects require the use of setTimeout to ge...

Examples of using provide and inject in Vue2.0/3.0

Table of contents 1. What is the use of provide/i...

HTML5+CSS3 header creation example and update

Last time, we came up with two header layouts, on...

How to build and deploy Node project with Docker

Table of contents What is Docker Client-side Dock...