时间:2021-05-19
目前,前后端分离的架构已成主流,因此使用springboot构建应用是非常快速的,项目发布到服务器上的时候,只需要打成一个jar包,然后通过命令 : java -jar jar包名称即可启动服务了;
但在有些场景下,比如部署到外部的服务器的时候,客户方指定要以tomcat的形式启动服务的时候,即需要由服务提供方提供一个war包的时候,该怎么办呢?
一开始没有查找资料,自己差点准备使用传统的ssm框架改造服务的,后来思考和参考相关资料后,发现只需要挤出简单的配置和改造就可以做到,下面是记载将springboot项目改造打包成war的流程,算是一个简单的参考:
这个依赖主要是用于在和jsp进行整合的使用,可酌情添加
有人说也可以添加一个tomcat的依赖,这种方式也许是可以的,但是我没有尝试,大多数推荐的还是上面一种,即排除掉内置的tomcat,
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope></dependency>改造之前:
@SpringBootApplicationpublic class MainApp { public static void main(String[] args) { SpringApplication.run(MainApp.class,args); }}改造之后:
@SpringBootApplicationpublic class MainApp extends SpringBootServletInitializer { public static void main(String[] args) { SpringApplication.run(MainApp.class,args); } @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) { return builder.sources(MainApp.class); }}这种改造方式也是官方比较推荐的方法
当然,在生成环境下,这里可以做更加精细的配置,
执行完毕后,可以看到war包已经生成了,默认是在target目录下,位置可以在pom文件中进行配置,
可以自己指定启动端口和访问的路径,
然后启动tomcat,看起来仍然像是springboot的启动界面,
为了验证,我们访问一下项目里面的接口,这里访问我们的swagger,可以看到,已经可以成功访问了,
项目启动的时候出现了乱码,如下所示,
解决办法如下,添加配置,-Dfile.encoding=UTF-8即可,
到此这篇关于springboot项目如何打war包流程的方法的文章就介绍到这了,更多相关springboot打war包内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
SpringBoot除了可以打可执行jar包外,也支持传统的war包。本文介绍如何使用SpringBoot构建传统war包。SpringBoot打war包步骤如
1.springboot不支持jsp打jar包,jsp只能打war包.方法:warorg.springframework.bootspring-boot-mav
springboot因为内嵌tomcat容器,所以可以通过打包为jar包的方法将项目发布,但是如何将springboot项目打包成可发布到tomcat中的war
本篇和大家分享的是通过maven对springboot中打war包和jar包;war通常来说生成后直接放到tomcat的webapps下面就行,tomcat配置
eclipse部署war的方法如下: 1、在需要打war的项目上右键ecport--other。 2、在上面的搜索框中输入war,会出现war包选项,选中,