在idea中將java項目中的單個類打包成jar包操作
JAR文件的全稱是Java Archive File,即Java檔案文件。JAR文件是一種壓縮文件,與常見的ZIP壓縮文件兼容,被稱為JAR包。
JAR文件與zip文件的主要區(qū)別是在JAR文件中默認包含了一個名為META-INF/MANIFEST.MF的清單文件,這個清單文件是在生成JAR文件時系統(tǒng)自動創(chuàng)建的。
打包jar包
1.先創(chuàng)建一個要打包成jar包的類
2.File -> Project Structrue -> Artifacts -> + -> JAR -> from modules with dependencies…
3.再Main Class中選擇要打包的類
project -> 選擇打包的類 -> 然后OK
project -> 點擊OK后,會彈出錯誤提示框,關(guān)閉該提示框,并關(guān)閉類選擇框
點擊OK
4.Apply -> OK
5.Build -> Build Artifacts
6.點擊Build后就會再之前選擇的jar存放目錄中生成jar包
導(dǎo)入jar包使用
1.File -> Project Structrue -> Modules ->Dependencies -> + -> jARs or directories…
2.在jar包的存放目錄中找到j(luò)ar包,然后點擊OK
3.選擇jar包 -> Apply -> OK
4.然后就可以在External Libraries中看到導(dǎo)入的jar包
5.將之前的MyJar類刪除掉,然后新建一個測試類Test,測試一下jar包是否可以,這里可以正常使用
補充知識:idea打包Jar(純java項目可執(zhí)行主類)
1、用maven-shade-plugin打包
我們這里利用maven中的maven-shade-plugin插件。在pom.xml中,我們加入如下的信息來加入插件。
<!-- 配置打可執(zhí)行的jar --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>1.4</version> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/spring.handlers</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/spring.schemas</resource> </transformer> <!-- 執(zhí)行主類入口--> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <mainClass>com.mina.test.TestServer</mainClass> </transformer> </transformers> </configuration> </execution> </executions> </plugin>
把spring.handlers和spring.schemas文件以append方式加入到構(gòu)建的jar包中,這樣就不會存在出現(xiàn)xsd找不到的情況。
配置完pom后,調(diào)用mvn clean install命令進行構(gòu)建,構(gòu)建成功后打開工程target目錄,發(fā)現(xiàn)生成了2個jar包,一個為:original-XXX-0.0.1-SNAPSHOT.jar,另一個為:XXX-0.0.1-SNAPSHOT.jar,其中original...jar里只包含了工程自己的class文件,而另外的一個jar包則包含了工程本身以及所有依賴的jar包的class文件。我們只需要使用第二個jar包就可以了。
2、用IDEA自帶的打包方式
打開IDEA的file -> Project Structure,進入項目配置頁面。如下圖:
點擊Artifacts,進入Artifacts配置頁面,點擊 + ,選擇如下圖的選項。
進入Create JAR from Modules頁面,按照如下圖配置。
第一步選擇Main函數(shù)執(zhí)行的類。
第二步選擇如圖的選項,目的是對第三方Jar包打包時做額外的配置,如果不做額外的配置可不選這個選項(但不保證打包成功)
第三步需要在src/main目錄下,新建一個resources目錄,將MANIFEST.MF文件保存在這里面,因為如果用默認缺省值的話,在IDEA12版本下會有bug。
點擊OK之后,出現(xiàn)如下圖界面,右鍵點擊<output root>,點擊Create Directory,創(chuàng)建一個libs,將所有的第三方JAR放進libs目錄下。
成功之后,如下圖所示:
放入之后,點擊我們要打成的jar的名字,這里面是kafka-cps.jar,選擇classpath進行配置。
編輯的結(jié)果如下:
這里將所有的jar都寫在libs/里面。點擊OK,回到配置頁面。
同時還注意在配置頁面,勾選build on make
最后點擊配置頁面的OK,完成配置?;氐絀DEA,點擊Build->Build Artifacts,選擇build
就會生成我們需要的jar包。其位置在項目目錄的out目錄下/out/artifacts/kafka_cps_jar。
下面放一個正確配置的清單文件內(nèi)容
以上這篇在idea中將java項目中的單個類打包成jar包操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
hibernate-validator后端表單數(shù)據(jù)校驗的使用示例詳解
這篇文章主要介紹了hibernate-validator后端表單數(shù)據(jù)校驗的使用,hibernate-validator提供的校驗方式為在類的屬性上加入相應(yīng)的注解來達到校驗的目的,本文結(jié)合示例代碼給大家介紹的非常詳細,需要的朋友可以參考下2022-08-08微服務(wù)mybatis?typehandler使用詳解(就這一篇夠了)
TypeHandler是MyBatis框架的核心組件,實現(xiàn)數(shù)據(jù)庫表字段類型和Java?數(shù)據(jù)類型之間的相互轉(zhuǎn)換,本文介紹通過實例代碼mybatis?typehandler使用,感興趣的朋友一起看看吧2024-02-02