SpringBoot项目部署至Linux 笔记

本文介绍了如何将SpringBoot项目部署到Linux环境,包括修改POM文件以排除内嵌Tomcat,添加Servlet依赖,设置打包为WAR,创建新的启动类,以及在Linux上安装JDK、Tomcat和Mysql,最后通过Xshell上传并启动服务,解决部署中可能遇到的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

服务环境:Linux+JDK1.8+Mysql+Tomcat9.0
开发环境:WindowsServer+Idea+JDK1.8+mysql
 一、项目打war包
     SpringBoot项目自带内嵌Tomcat服务器,需要先修改pom.xml,找到spring-boot-starter-web依赖修改将内嵌Tomcat移除
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!-- 移除嵌入式tomcat插件 -->
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>

添加Servlet依赖
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>

修改SpringBoot项目打包格式为war
<groupId>com.cj.demo</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>  //默认为jar,如果项目创建为war的话不需要修改

重新定义启动类,在原有启动类同级目录下创建新的启动Application,继承SpringBootServletInitializer重写configure方法
图片
builder.sources(Class.xx)  //该方法里面的类参数必须指向原来的启动类

Idea下方Terminal执行打包命令 mvn clean package  或者通过Idea右侧的Maven projects工具执行package
等待BUILD SUCCESS后,可以在项目target文件夹下看到打包后的war包 

二、Linux 系统安装相关服务软件
安装JDK 、

安装Tomcat 、

安装Mysql 

 上面的服务软件依赖的安装步骤,网上挺多的,可以自己找一下

三、部署war包
将项目war包通过Xshell软件上传至Linux系统 Tomcat webapps文件夹下,在Tomcat bin目录下执行shell命令./startup.sh启动Tomcat,
Tomcat会自动解压war包,然后就可以通过Ip+:端口+项目war名 访问项目了

PS:说下自己在部署时遇到的问题
1、远程访问Linux系统上的服务时,记得关闭Linux防火墙或者修改防火墙端口权限,不然无法访问;
2、可以正常访问Tomcat主页的情况下,无法访问服务404,看下有没有在端口后加上war包解压后的项目名称,也可以将Tomcat webapps目录下的ROOT文件删除,将war包重新命名为ROOT.war,这样就可以直接通过IP+:端口直接访问项目,不需要加项目名称
3、如果服务采用的远程连接Mysql,这里需要事先修改Mysql host权限,通过命令登录mysql服务,执行update user set host = '%' where user = 'root';  //这里的root指的是配置连接的username

 

新人,第一次发这个,中间有些地方都是参考网上方法,基本相当于做了一个简单的整理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值