Spring Boot如何移除内嵌Tomcat,使用非web方式启动

时间:2021-05-20

前言:当我们使用Spring Boot编写了一个批处理应用程序,该程序只是用于后台跑批数据,此时不需要内嵌的tomcat,简化启动方式使用非web方式启动项目,步骤如下:

1、修改pom.xml文件

在pom.xml文件中去除内嵌tomcat,添加servlet依赖

<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <!--去除内嵌tomcat --> <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>compile</scope> </dependency>

2、设置打包方式

在pom.xml文件中将打项目包方式设置成jar,打成jar包通过命令去执行jar

<packaging>jar</packaging>

3、禁用web程序启动方式

对于非Web应用程序,请在属性文件中禁用Web应用程序类型,application.yml文件中添加:

spring: main: web-application-type: none

4、在启动类中扩展

继承SpringBootServletInitializer 类,以下本人写了一个测试方法,项目启动后生成一个txt文件进行测试

@SpringBootApplicationpublic class TestiopojApplication extends SpringBootServletInitializer { public static void main(String[] args) { System.out.println("项目开始启动,开始执行任务============"); SpringApplication.run(TestiopojApplication.class, args); String file = "E:\\copyFile";//文件存放路径 String fileName = "test测试";//生成的文件名 String strContext = "测试成功=======";//文件内容 try { FileUtils.writeStringToFile((new File(file + File.separator + fileName + ".txt")), strContext, "UTF-8"); System.out.println("文件创建成功============"); } catch (IOException e) { System.out.println("文件创建失败============"); } }}

5、实列测试结果

由此我们可以通过java -jar 运行打包后的项目jar,控制台显示Spring Boot启动标志,项目正常启动,文件也正常创建成功,大功告成

以上就是Spring Boot如何移除内嵌Tomcat,使用非web方式启动的详细内容,更多关于Spring Boot移除内嵌Tomcat的资料请关注其它相关文章!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章