在maven項(xiàng)目中使用本地jar包的4種方法

本文講述在maven項(xiàng)目中使用本地jar包的4種方法:

手動添加jar到本地maven庫

第一種方法是使用mvn命令將jar包添加到本地方法庫滤祖,方法如下:

mvn install:install-file -Dfile=<path-to-file> -DgroupId=<group-id> -DartifactId=<artifact-id> -Dversion=<version>

參數(shù)如下:

  • <path-to-file>: Path to the JAR to install
  • <group-id>: Group id of the JAR to install
  • <artifact-id>: Artifact id of the JAR to install
  • <version>: Version of the JAR
    例子如下:
mvn install:install-file -DgroupId=com.example  -DartifactId=auth -Dversion=1.0.0 -Dpackaging=jar -Dfile=Athena-1.0.0-jar-with-dependencies.jar

使用 maven-install-plugin

這個(gè)方法是在pom.xml中使用maven-install-plugin,在“initialize”階段安裝jar包蚓胸,可以把jar包放在一個(gè)指定的路徑下旺芽,例子如下:

<build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-install-plugin</artifactId>
                <executions>
                    <execution>
                        <phase>initialize</phase>
                        <goals>
                            <goal>install-file</goal>
                        </goals>
                        <configuration>
                            <packaging>jar</packaging>
                            <artifactId>Athena</artifactId>
                            <groupId>com.example.zodiac</groupId>
                            <version>1.0.0</version>
                            <file>${basedir}/lib/Athena-1.0.0-jar-with-dependencies.jar</file>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

        </plugins>

    </build>

經(jīng)過各種嘗試亚斋,發(fā)現(xiàn)一種情況:在一個(gè)pom.xml文件中使用maven-install-plugin的同時(shí)定義對該jar包的依賴,這種方式編譯無法通過。
變通方式是在root module的pom.xml中使用maven-install-plugin,然后在子module中使用dependency蝶俱,例子如下:

        <dependency>
            <groupId>com.example.zodiac</groupId>
            <artifactId>Athena</artifactId>
            <version>1.0.0</version>
            <type>jar</type>
        </dependency>

在dependency中使用system scope

這種方法比較簡單笛匙,直接上例子:

      <dependency>
            <groupId>com.example.zodiac</groupId>
            <artifactId>Athena</artifactId>
            <version>1.0.0</version>
            <type>jar</type>
           <scope>system</scope>
          <systemPath>${basedir}/lib/Athena-1.0.0-jar-with-dependencies.jar</systemPath>
        </dependency>

創(chuàng)建一個(gè)本地maven庫

這種方法簡單粗暴侨把,在pom.xml文件中定義一個(gè)新的maven庫,然后根據(jù)maven的存儲方式將jar包放在指定的路徑下:

<repositories>
        <repository>
            <id>local</id>
            <name>local</name>
            <url>file:///${pom.basedir}/lib/</url>
            <layout>default</layout>
            <snapshots><enabled>false</enabled></snapshots>
        </repository>
    </repositories>

然后將jar包放在路徑:${pom.basedir}/lib/com/example/zodiac/Athena/1.0.0/Athena-1.0.0-.jar
ps:由于Athena-1.0.0-jar-with-dependencies.jar命名不符合maven的規(guī)范妹孙,所以需要將Athena-1.0.0-jar-with-dependencies.jar重命名為Athena-1.0.0-.jar或者修改依賴jar的version為:1.0.0-jar-with-dependencies

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末秋柄,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子蠢正,更是在濱河造成了極大的恐慌骇笔,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,464評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異笨触,居然都是意外死亡懦傍,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,033評論 3 399
  • 文/潘曉璐 我一進(jìn)店門芦劣,熙熙樓的掌柜王于貴愁眉苦臉地迎上來粗俱,“玉大人,你說我怎么就攤上這事虚吟〈缛希” “怎么了?”我有些...
    開封第一講書人閱讀 169,078評論 0 362
  • 文/不壞的土叔 我叫張陵串慰,是天一觀的道長偏塞。 經(jīng)常有香客問我,道長邦鲫,這世上最難降的妖魔是什么灸叼? 我笑而不...
    開封第一講書人閱讀 59,979評論 1 299
  • 正文 為了忘掉前任,我火速辦了婚禮庆捺,結(jié)果婚禮上古今,老公的妹妹穿的比我還像新娘。我一直安慰自己疼燥,他們只是感情好沧卢,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,001評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著醉者,像睡著了一般但狭。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上撬即,一...
    開封第一講書人閱讀 52,584評論 1 312
  • 那天立磁,我揣著相機(jī)與錄音,去河邊找鬼剥槐。 笑死唱歧,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的粒竖。 我是一名探鬼主播颅崩,決...
    沈念sama閱讀 41,085評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼蕊苗!你這毒婦竟也來了沿后?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 40,023評論 0 277
  • 序言:老撾萬榮一對情侶失蹤朽砰,失蹤者是張志新(化名)和其女友劉穎尖滚,沒想到半個(gè)月后喉刘,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,555評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡漆弄,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,626評論 3 342
  • 正文 我和宋清朗相戀三年睦裳,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片撼唾。...
    茶點(diǎn)故事閱讀 40,769評論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡廉邑,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出券坞,到底是詐尸還是另有隱情鬓催,我是刑警寧澤肺素,帶...
    沈念sama閱讀 36,439評論 5 351
  • 正文 年R本政府宣布恨锚,位于F島的核電站,受9級特大地震影響倍靡,放射性物質(zhì)發(fā)生泄漏猴伶。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,115評論 3 335
  • 文/蒙蒙 一塌西、第九天 我趴在偏房一處隱蔽的房頂上張望他挎。 院中可真熱鬧,春花似錦捡需、人聲如沸办桨。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,601評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽呢撞。三九已至,卻和暖如春饰剥,著一層夾襖步出監(jiān)牢的瞬間殊霞,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,702評論 1 274
  • 我被黑心中介騙來泰國打工汰蓉, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留绷蹲,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,191評論 3 378
  • 正文 我出身青樓顾孽,卻偏偏與公主長得像祝钢,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子若厚,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,781評論 2 361

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理拦英,服務(wù)發(fā)現(xiàn),斷路器盹沈,智...
    卡卡羅2017閱讀 134,714評論 18 139
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,863評論 6 342
  • 簡介 概述 Maven 是一個(gè)項(xiàng)目管理和整合工具 Maven 為開發(fā)者提供了一套完整的構(gòu)建生命周期框架 Maven...
    閩越布衣閱讀 4,307評論 6 39
  • 一個(gè)真正的男人注定要經(jīng)歷一場孤獨(dú)的戰(zhàn)爭龄章,不需要理解吃谣,不需要安慰,受了傷用舌頭把血跡舔干做裙,繼續(xù)前行岗憋。 凡是渴望被理解...
    悟道修行閱讀 402評論 0 1
  • 無欲而為閱讀 184評論 0 0