springboot項(xiàng)目以jar包運(yùn)行的操作方法
什么是Spring Boot
Spring Boot 是由 Pivotal 團(tuán)隊(duì)提供的全新框架,其設(shè)計(jì)目的是用來簡化新 Spring 應(yīng)用的初始搭建以及開發(fā)過程。該框架使用了特定的方式來進(jìn)行配置,從而使開發(fā)人員不再需要定義樣板化的配置。用我的話來理解,就是 Spring Boot 其實(shí)不是什么新的框架,它默認(rèn)配置了很多框架的使用方式,就像 Maven 整合了所有的 Jar 包,Spring Boot 整合了所有的框架。
公司的springboot項(xiàng)目本來是打war包的,突然要求改成jar包,一路上碰到一些坑,在此記錄一下。
一、pom文件配置
1、打包方式改成jar
<packaging>jar</packaging>
2、配置可執(zhí)行jar包的maven插件
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <!-- 如果有依賴外部jar,則必須加上此配置includeSystemScope--> <configuration> <includeSystemScope>true</includeSystemScope> </configuration> </plugin> </plugins> </build>
3、引入外部jar依賴(可選)
如果項(xiàng)目中引入了外部jar,可在項(xiàng)目根目錄創(chuàng)建lib文件夾,將jar包放入lib中:
然后在pom文件中引入jar包:
PS:如果項(xiàng)目以war的形式打包,并且引入了外部jar,則maven插件的配置如下
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>2.6</version> <configuration> <webResources> <resource> <directory>${project.basedir}/lib</directory> <targetPath>WEB-INF/lib</targetPath> <includes> <include>**/*.jar</include> </includes> </resource> </webResources> </configuration> </plugin> </plugins> </build>
二、打包運(yùn)行
1、打包
打包命令,很簡單:
mvn install
2、運(yùn)行
在生產(chǎn)和測(cè)試環(huán)境,一般都需要保持進(jìn)程一直在后臺(tái)運(yùn)行,斷開終端也不中斷,則需要執(zhí)行以下命令:
nohup java -jar test.jar &>>log.out &
三、配置文件優(yōu)先級(jí)
spring boot會(huì)按以下順序去尋找配置文件:
1、“當(dāng)前目錄”的/config文件夾下
2、“當(dāng)前目錄”下
3、classpath的/config文件夾下
4、classpath下
注意事項(xiàng):
- 當(dāng)前目錄指的是執(zhí)行java命令所在目錄,如果是通過shell腳本執(zhí)行的java命令,則當(dāng)前目錄指shell腳本所在目錄,如果在shell腳本中cd到某一目錄再執(zhí)行的java命令,則當(dāng)前目錄就指cd后的目錄。
- 不同優(yōu)先級(jí)的配置文件都能被讀到,但相同的配置項(xiàng),優(yōu)先級(jí)高的配置文件的配置會(huì)覆蓋優(yōu)先級(jí)低的配置文件的配置。
- jar包內(nèi)的配置文件不方便修改,生產(chǎn)上我們一般會(huì)將配置文件放在jar包外。
生產(chǎn)上可以直接將配置文件放在jar包所在目錄同級(jí)的config目錄,然后在腳本中cd到j(luò)ar包所在目錄,執(zhí)行java命令就可以讀到配置文件啦。
參考:http://chabaoo.cn/article/216285.htm
到此這篇關(guān)于springboot項(xiàng)目以jar包運(yùn)行的操作方法的文章就介紹到這了,更多相關(guān)springboot jar包內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java實(shí)現(xiàn)快速將HTML表格轉(zhuǎn)換成Excel
這篇文章主要為大家詳細(xì)介紹一種使用Java的快速將Web中表格轉(zhuǎn)換成Excel的方法,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-05-05SpringBoot根據(jù)目錄結(jié)構(gòu)自動(dòng)配置Url前綴方式
這篇文章主要介紹了SpringBoot根據(jù)目錄結(jié)構(gòu)自動(dòng)配置Url前綴方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11Java用split分割含一個(gè)或多個(gè)空格的字符串案例
這篇文章主要介紹了Java用split分割含一個(gè)或多個(gè)空格的字符串案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來過來看看吧2020-09-09詳解JDK自帶javap命令反編譯class文件和Jad反編譯class文件(推薦使用jad)
這篇文章主要介紹了JDK自帶javap命令反編譯class文件和Jad反編譯class文件(推薦使用jad),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-09-09JAVA中Context的詳細(xì)介紹和實(shí)例分析
這篇文章主要介紹了JAVA中Context的詳細(xì)介紹和實(shí)例分析,Context是維持android各組件能夠正常工作的一個(gè)核心功能類。如果感興趣來學(xué)習(xí)一下2020-07-07Mybatis實(shí)現(xiàn)動(dòng)態(tài)SQL編寫的示例詳解
這篇文章主要為大家詳細(xì)介紹了mybatis中的動(dòng)態(tài)sql的使用以及緩存的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價(jià)值,需要的可以參考一下2023-02-02