Spring Shell打Jar包時(shí)常用小技巧
1、Main-Class
spring-shell項(xiàng)目打Jar包的一個(gè)必要條件就是,指定Main-Class為org.springframework.shell.Bootstrap
一般情況下,如果想在IDE中直接運(yùn)行項(xiàng)目,顯示在控制臺(tái)中,也會(huì)調(diào)用org.springframework.shell.Bootstrap中的Main方法。如下:
import org.springframework.shell.Bootstrap;
import java.io.IOException;
public class HelloApplication {
public static void main(String[] args) throws IOException {
Bootstrap.main(args);
}
}
2、配置讀取新xml文件
spring-shell項(xiàng)目,要求在resource/META-INF/spring目錄下,必須有一個(gè)spring-shell-plugin.xml文件,打Jar包的時(shí)候必須要包括這個(gè)文件。
在IDEA中,Maven項(xiàng)目是會(huì)默認(rèn)掃描resource目錄的,但是打成Jar包的時(shí)候, 是不會(huì)掃描的。我也不知道為什么,只是只是此時(shí)最好在pom.xml中配置一下,讓它讀取這個(gè)xml文件:
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
PS:src/main/java目錄下的xml文件也得讀。如果把上面這兩個(gè)<resource>合并到一起,寫成<directory>src/main</directory>,反而是不對(duì)的。太奇怪了。
3、打包多個(gè)Jar包
如果項(xiàng)目打Jar包時(shí),需要依賴于另外一個(gè)spring-shell的Jar包,可以直接在pom.xml中添加依賴,這樣就會(huì)把所有的新增的命令合并到一起
<dependencies> <dependency> <groupId>cn.com.bignzi</groupId> <artifactId>dcore</artifactId> <version>0.0.1-SNAPSHOT</version> </dependency> <dependency> <groupId>cn.com.bignzi</groupId> <artifactId>plugin.data</artifactId> <version>0.0.1-SNAPSHOT</version> </dependencies>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
SpringCloud添加客戶端Eureka Client過程解析
這篇文章主要介紹了SpringCloud添加客戶端Eureka Client過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-03-03
SpringCloud Eureka實(shí)現(xiàn)服務(wù)注冊(cè)與發(fā)現(xiàn)
Eureka是一種基于REST(具像狀態(tài)傳輸)的服務(wù),主要用于AWS云中定位服務(wù),以實(shí)現(xiàn)中間層服務(wù)器的負(fù)載平衡和故障轉(zhuǎn)移。本文記錄一個(gè)簡(jiǎn)單的服務(wù)注冊(cè)與發(fā)現(xiàn)實(shí)例。感興趣的小伙伴們可以參考一下2019-01-01
java簡(jiǎn)單實(shí)現(xiàn)斗地主發(fā)牌功能
這篇文章主要為大家詳細(xì)介紹了java簡(jiǎn)單實(shí)現(xiàn)斗地主發(fā)牌功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-06-06
Mybatis?Plus?中的LambdaQueryWrapper示例詳解
這篇文章主要介紹了Mybatis?Plus?中的LambdaQueryWrapper,本文通過示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-03-03
一文詳解各種ElasticSearch查詢?cè)贘ava中的實(shí)現(xiàn)
Elasticsearch是用Java開發(fā)的,并作為Apache許可條款下的開放源碼發(fā)布,是當(dāng)前流行的企業(yè)級(jí)搜索引擎,下面這篇文章主要給大家介紹了關(guān)于各種ElasticSearch查詢?cè)贘ava中實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下2023-11-11
Java并發(fā)編程之柵欄(CyclicBarrier)實(shí)例介紹
這篇文章主要介紹了Java并發(fā)編程之柵欄(CyclicBarrier)實(shí)例介紹,柵欄類似閉鎖,但是它們是有區(qū)別的,需要的朋友可以參考下2015-04-04
java實(shí)現(xiàn)創(chuàng)建縮略圖、伸縮圖片比例生成的方法
這篇文章主要介紹了java實(shí)現(xiàn)創(chuàng)建縮略圖、伸縮圖片比例生成的方法,可實(shí)現(xiàn)針對(duì)圖片大小的縮放功能,是Java針對(duì)圖片操作的典型應(yīng)用,需要的朋友可以參考下2014-11-11

