Spring Boot如何移除內嵌Tomcat,使用非web方式啟動
前言:當我們使用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文件進行測試
@SpringBootApplication public 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的資料請關註WalkonNet其它相關文章!
推薦閱讀:
- 解決Intellij IDEA覆蓋tomcat配置的問題
- SpringBoot項目如何打war包問題詳解
- springboot項目如何打war包流程的方法
- SpringBoot如何切換成其它的嵌入式Servlet容器(Jetty和Undertow)
- 詳解如何更改SpringBoot TomCat運行方式