IntellijIdea 非Maven項目打Jar包(散包,依賴在外面)


一、以Spring Boot項目為例,在未使用maven的情況下將其打成Jar包。

二、將其打成散包,即項目依賴的Jar包在目錄同級或子級。 好處是如果項目更新,只需要更新項目的jar,不需要更新所有。


一、檢查項目是否包含META-INF文件夾。

圖片描述

若包含META-INF文件夾,將其刪除。等下重新生成。

二、構建Artifacts

2.1 選擇菜單中的 File->Project Structure 。 在彈出的Project Structure中選擇 Artifacts-> + -> JAR ->From modules with dependencies

圖片描述

2.2 在彈出的窗口中選擇要打包的模塊和主函數,然后選擇要打成散包還是一個整體。
圖片描述

Module: 模塊,選擇需要打包的模塊。如果程序沒有分模塊,那么只有一個可以選擇的。
MainClass:選擇程序的入口類。
extract to the target JAR:抽取到目標JAR。選擇該項則會將所依賴的jar包全都打到一個jar文件中,此jar解壓后是所依賴的jar及本工程編譯好的文件目錄
copy to the output directory and link via manifest:將依賴的jar復制到輸出目錄並且使用manifest鏈接它們。
Direct for META-INF/MANIFEST.MF: 如果上面選擇了 "copy to ... "這一項,這里需要選擇生成的manifest文件在哪個目錄下,META-INF/MANIFEST.MF一般放在src下面最好
Include tests: 是否包含tests。 一般這里不選即可。

圖片描述

選擇OK,會在剛才選擇的文件夾下面生成一個META-INF文件夾,下面有一個MANIFEST.MF文件

MANIFEST.MF
主要一下幾個:
Manifest-Version: Manifest文件的版本,這個不用管。
Class-Path: 描述lib包相對生成的jar的路徑。
Main-Class: 程序的入口類

三、將生成的MANIFEST.MF增添到JAR包

圖片描述

在這些jar包中,黃色的是依賴的jar包,藍色的是我們生成的要運行的jar包。在藍色的jar包上右鍵,選擇 “Create Directory”(創建文件夾),名稱叫做META-INF。
圖片描述

在新建的“META-INF”文件夾上右鍵,選擇Add Copy of 下的 File,選擇剛剛生成的MANIFEST.MF文件。如下圖
圖片描述


四、生成Jar包。

配置完上述后。選擇菜單中的 build -> build artifacts... 

圖片描述

此時頁面中間會彈出要生成的jar包,選擇剛剛構建的Artifacts,選擇build或者rebuild
圖片描述

Build:只將主Jar包重新生成,不重新生成所依賴的Jar包。
Rebuild: 將所有jar包重新生成。

此時生成jar包已經完成

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM