springboot项目war包部署并去除项目名访问
springboot项目jar包部署请见:https://blog.csdn.net/rico_zhou/article/details/81283953
springboot内置了Tomcat,并且我们开发环境springboot启动是可以不带有项目名访问的,近日有了这个需求,原本是jar包部署并注册成服务,现在需要war包部署,以Windows下环境为例。
首先,将pom.xml中打包配置改成war
war
文章图片
然后去除springboot中自带的tomcat
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-tomcat
文章图片
再添加servlet依赖
javax.servlet
javax.servlet-api
3.1.0
provided
文章图片
【java|springboot项目war包部署并去除项目名访问】最后如图:
文章图片
接下来会出现报错信息如果你的项目中使用了Tomcat相关的依赖,如:
import org.apache.tomcat.util.http.fileupload.FileUploadBase.FileSizeLimitExceededException;
没关系,不用管。接下来更改启动类,继承SpringBootServletInitializer ,覆盖configure(),把启动类Application注册进去,如:
/**
* web容器中进行部署
*
* @author ricozhou
*/
public class RZSpiderServletInitializer extends SpringBootServletInitializer
{
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application)
{
return application.sources(RZSpiderApplication.class);
}}
接下来不再需要更改内容,根目录下(即src和pom.xml同级目录)执行:mvn clean package
mvn clean package
打包结束后即可在target文件夹中找到war包,或者在eclipse中右击项目>Run as>Maven install打包结束同样在target目录下找到war
文章图片
接下来开始部署,下载安装Tomcat,或者解压tomcat,将war包复制到apache-tomcat-9.0.5\webapps下,到bin目录下双击startup.bat即可启动,可看到webapps下有war包同名目录生成,在浏览器输入localhost:8080/项目名,即可访问。
但是由于我之前是jar包部署,不想加项目名,否则需要更改好多资源路径太麻烦,怎么办呢?
很简单,将webapps目录下的ROOT文件夹删除,将自己的war包更名为ROOT.war,重新启动tomcat,浏览器中输入localhost:8080即可访问
文章图片
推荐阅读
- Java|Java基础——数组
- 人工智能|干货!人体姿态估计与运动预测
- java简介|Java是什么(Java能用来干什么?)
- Java|规范的打印日志
- Linux|109 个实用 shell 脚本
- 程序员|【高级Java架构师系统学习】毕业一年萌新的Java大厂面经,最新整理
- Spring注解驱动第十讲--@Autowired使用
- SqlServer|sql server的UPDLOCK、HOLDLOCK试验
- jvm|【JVM】JVM08(java内存模型解析[JMM])
- windows11|Windows11安装Android子系统