欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

在idea中將java項(xiàng)目中的單個(gè)類打包成jar包操作

 更新時(shí)間:2020年08月25日 10:31:32   作者:CD4356  
這篇文章主要介紹了在idea中將java項(xiàng)目中的單個(gè)類打包成jar包操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

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中,我們加入如下的信息來加入插件。

<!-- 配置打可執(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)目配置頁面。如下圖:

點(diǎn)擊Artifacts,進(jìn)入Artifacts配置頁面,點(diǎn)擊 + ,選擇如下圖的選項(xiàng)。

進(jìn)入Create JAR from Modules頁面,按照如下圖配置。

第一步選擇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,回到配置頁面。

同時(shí)還注意在配置頁面,勾選build on make

最后點(diǎn)擊配置頁面的OK,完成配置?;氐絀DEA,點(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包操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java中的setting和getting使用方法

    Java中的setting和getting使用方法

    為了保障數(shù)據(jù)的安全性,通常將數(shù)據(jù)成員定義為private(封裝或私有化),這樣外部代碼就無法直接訪問這些數(shù)據(jù),只能通過類提供的公共方法來進(jìn)行訪問,這種方法主要包括setter和getter方法,以及構(gòu)造方法,setter方法用于給私有屬性賦值
    2024-09-09
  • Java 數(shù)組內(nèi)置函數(shù)toArray詳解

    Java 數(shù)組內(nèi)置函數(shù)toArray詳解

    這篇文章主要介紹了Java 數(shù)組內(nèi)置函數(shù)toArray詳解,文本詳細(xì)的講解了toArray底層的代碼和文檔,需要的朋友可以參考下
    2021-06-06
  • Springboot攔截filter中異常的處理

    Springboot攔截filter中異常的處理

    SpringBoot提供了全局異常處理機(jī)制可以攔截所有異常,包括Filter中的異常,本文主要介紹了Springboot攔截filter中異常的處理,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-11-11
  • PowerMockito的基本使用解析

    PowerMockito的基本使用解析

    這篇文章主要介紹了PowerMockito的基本使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • SpringBoot各種事務(wù)操作實(shí)戰(zhàn)(自動(dòng)回滾、手動(dòng)回滾、部分回滾)

    SpringBoot各種事務(wù)操作實(shí)戰(zhàn)(自動(dòng)回滾、手動(dòng)回滾、部分回滾)

    本文主要介紹了SpringBoot各種事務(wù)操作實(shí)戰(zhàn),包含自動(dòng)回滾、手動(dòng)回滾、部分回滾這三種,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05
  • Java利用cors實(shí)現(xiàn)跨域請(qǐng)求實(shí)例

    Java利用cors實(shí)現(xiàn)跨域請(qǐng)求實(shí)例

    本篇文章主要介紹了Java利用cors實(shí)現(xiàn)跨域請(qǐng)求實(shí)例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-05-05
  • 基于Java設(shè)計(jì)一個(gè)高并發(fā)的秒殺系統(tǒng)

    基于Java設(shè)計(jì)一個(gè)高并發(fā)的秒殺系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了如何基于Java設(shè)計(jì)一個(gè)高并發(fā)的秒殺系統(tǒng),文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,有需要的小伙伴可以參考下
    2023-10-10
  • 通過Java實(shí)現(xiàn)獲取表的自增主鍵值

    通過Java實(shí)現(xiàn)獲取表的自增主鍵值

    這篇文章主要為大家詳細(xì)介紹了如何通過Java實(shí)現(xiàn)獲取表的自增主鍵值,文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價(jià)值,感興趣的可以了解一下
    2023-06-06
  • Spring核心思想之淺談IoC容器與依賴倒置(DI)

    Spring核心思想之淺談IoC容器與依賴倒置(DI)

    文章介紹了Spring的IoC和DI機(jī)制,以及MyBatis的動(dòng)態(tài)代理,通過注解和反射,Spring能夠自動(dòng)管理對(duì)象的創(chuàng)建和依賴注入,而MyBatis則通過動(dòng)態(tài)代理實(shí)現(xiàn)了接口方法到數(shù)據(jù)庫操作的映射,文章詳細(xì)解釋了Spring和MyBatis的工作原理,并通過示例代碼展示了它們的結(jié)合使用方式
    2025-01-01
  • Java并發(fā)J.U.C并發(fā)容器類list set queue

    Java并發(fā)J.U.C并發(fā)容器類list set queue

    這篇文章主要為大家介紹了Java并發(fā),J.U.C并發(fā)容器類list set queue,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-06-06

最新評(píng)論