在idea中將java項(xiàng)目中的單個(gè)類打包成jar包操作
JAR文件的全稱是Java Archive File,即Java檔案文件。JAR文件是一種壓縮文件,與常見的ZIP壓縮文件兼容,被稱為JAR包。
JAR文件與zip文件的主要區(qū)別是在JAR文件中默認(rèn)包含了一個(gè)名為META-INF/MANIFEST.MF的清單文件,這個(gè)清單文件是在生成JAR文件時(shí)系統(tǒng)自動(dòng)創(chuàng)建的。
打包jar包
1.先創(chuàng)建一個(gè)要打包成jar包的類
2.File -> Project Structrue -> Artifacts -> + -> JAR -> from modules with dependencies…
3.再M(fèi)ain Class中選擇要打包的類
project -> 選擇打包的類 -> 然后OK
project -> 點(diǎn)擊OK后,會(huì)彈出錯(cuò)誤提示框,關(guān)閉該提示框,并關(guān)閉類選擇框
點(diǎn)擊OK
4.Apply -> OK
5.Build -> Build Artifacts
6.點(diǎn)擊Build后就會(huì)再之前選擇的jar存放目錄中生成jar包
導(dǎo)入jar包使用
1.File -> Project Structrue -> Modules ->Dependencies -> + -> jARs or directories…
2.在jar包的存放目錄中找到j(luò)ar包,然后點(diǎn)擊OK
3.選擇jar包 -> Apply -> OK
4.然后就可以在External Libraries中看到導(dǎo)入的jar包
5.將之前的MyJar類刪除掉,然后新建一個(gè)測(cè)試類Test,測(cè)試一下jar包是否可以,這里可以正常使用
補(bǔ)充知識(shí):idea打包Jar(純java項(xiàng)目可執(zhí)行主類)
1、用maven-shade-plugin打包
我們這里利用maven中的maven-shade-plugin插件。在pom.xml中,我們加入如下的信息來(lái)加入插件。
<!-- 配置打可執(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包中,這樣就不會(huì)存在出現(xiàn)xsd找不到的情況。
配置完pom后,調(diào)用mvn clean install命令進(jìn)行構(gòu)建,構(gòu)建成功后打開工程target目錄,發(fā)現(xiàn)生成了2個(gè)jar包,一個(gè)為:original-XXX-0.0.1-SNAPSHOT.jar,另一個(gè)為:XXX-0.0.1-SNAPSHOT.jar,其中original...jar里只包含了工程自己的class文件,而另外的一個(gè)jar包則包含了工程本身以及所有依賴的jar包的class文件。我們只需要使用第二個(gè)jar包就可以了。
2、用IDEA自帶的打包方式
打開IDEA的file -> Project Structure,進(jìn)入項(xiàng)目配置頁(yè)面。如下圖:
點(diǎn)擊Artifacts,進(jìn)入Artifacts配置頁(yè)面,點(diǎn)擊 + ,選擇如下圖的選項(xiàng)。
進(jìn)入Create JAR from Modules頁(yè)面,按照如下圖配置。
第一步選擇Main函數(shù)執(zhí)行的類。
第二步選擇如圖的選項(xiàng),目的是對(duì)第三方Jar包打包時(shí)做額外的配置,如果不做額外的配置可不選這個(gè)選項(xiàng)(但不保證打包成功)
第三步需要在src/main目錄下,新建一個(gè)resources目錄,將MANIFEST.MF文件保存在這里面,因?yàn)槿绻媚J(rèn)缺省值的話,在IDEA12版本下會(huì)有bug。
點(diǎn)擊OK之后,出現(xiàn)如下圖界面,右鍵點(diǎn)擊<output root>,點(diǎn)擊Create Directory,創(chuàng)建一個(gè)libs,將所有的第三方JAR放進(jìn)libs目錄下。
成功之后,如下圖所示:
放入之后,點(diǎn)擊我們要打成的jar的名字,這里面是kafka-cps.jar,選擇classpath進(jìn)行配置。
編輯的結(jié)果如下:
這里將所有的jar都寫在libs/里面。點(diǎn)擊OK,回到配置頁(yè)面。
同時(shí)還注意在配置頁(yè)面,勾選build on make
最后點(diǎn)擊配置頁(yè)面的OK,完成配置。回到IDEA,點(diǎn)擊Build->Build Artifacts,選擇build
就會(huì)生成我們需要的jar包。其位置在項(xiàng)目目錄的out目錄下/out/artifacts/kafka_cps_jar。
下面放一個(gè)正確配置的清單文件內(nèi)容
以上這篇在idea中將java項(xiàng)目中的單個(gè)類打包成jar包操作就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. .NET 中配置從xml轉(zhuǎn)向json方法示例詳解2. ASP錯(cuò)誤捕獲的幾種常規(guī)處理方式3. 詳解php如何合并身份證正反面圖片為一張圖片4. Laravel中數(shù)據(jù)庫(kù)遷移操作的示例詳解5. npm下載慢或下載失敗問題解決的三種方法6. Python 如何將字符串每?jī)蓚€(gè)用空格隔開7. 使用Spry輕松將XML數(shù)據(jù)顯示到HTML頁(yè)的方法8. ASP編碼必備的8條原則9. python基于opencv批量生成驗(yàn)證碼的示例10. python 用遞歸實(shí)現(xiàn)通用爬蟲解析器
