java 中使用maven shade plugin 打可執(zhí)行Jar包
java 中使用maven shade plugin 打可執(zhí)行Jar包
eclipse里有一個功能叫做“打可執(zhí)行(runnable) jar包”, 用這個功能可以把一個工程自身和所有依賴包打成一個fat jar,并且指定Main方法,這樣直接使用java jar xxx.jar就可以運行代碼了。
但是在不使用eclipse的時候呢?其實,借助maven,我們很容易實現(xiàn)同樣功能。maven提供了一個shade plugin,可以用來打fat jar, 同時也提供了指定main方法的功能。
<project> ... <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>3.0.0</version> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <mainClass>org.sonatype.haven.HavenCli</mainClass> </transformer> </transformers> </configuration> </execution> </executions> </plugin> </plugins> </build> ... </project>
然后在用maven打包的時候就可以打出直接可運行的包了。
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關(guān)文章
Java-Io-RandomAccessFile任意位置讀寫數(shù)據(jù)的操作小結(jié)
RandomAccessFile類支持隨機(jī)訪問方式,可以跳轉(zhuǎn)到文件的任意位置讀寫數(shù)據(jù),這個類在文件隨機(jī)讀取時有很大的優(yōu)勢,可利用多線程完成對一個大文件的讀寫,本文給大家介紹Java-Io-RandomAccessFile(任意位置讀寫數(shù)據(jù))的相關(guān)知識,需要的朋友可以參考下2022-05-05詳解Java數(shù)據(jù)庫連接JDBC基礎(chǔ)知識(操作數(shù)據(jù)庫:增刪改查)
這篇文章主要介紹了詳解Java數(shù)據(jù)庫連接JDBC基礎(chǔ)知識(操作數(shù)據(jù)庫:增刪改查),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-01-01Java零基礎(chǔ)教程之do-while循環(huán)語句實例
Java中的do-while循環(huán)是一種后測試循環(huán)語句,它類似于while循環(huán),但它先執(zhí)行循環(huán)體中的代碼,然后再進(jìn)行條件判斷,無論條件是否滿足,至少會執(zhí)行一次循環(huán)體中的代碼,這篇文章主要給大家介紹了關(guān)于Java零基礎(chǔ)教程之do-while循環(huán)語句的相關(guān)資料,需要的朋友可以參考下2024-09-09Springboot集成SSE實現(xiàn)單工通信消息推送流程詳解
SSE簡單的來說就是服務(wù)器主動向前端推送數(shù)據(jù)的一種技術(shù),它是單向的,也就是說前端是不能向服務(wù)器發(fā)送數(shù)據(jù)的。SSE適用于消息推送,監(jiān)控等只需要服務(wù)器推送數(shù)據(jù)的場景中,下面是使用Spring Boot來實現(xiàn)一個簡單的模擬向前端推動進(jìn)度數(shù)據(jù),前端頁面接受后展示進(jìn)度條2022-11-11