系統最佳化(一)Maven打包同一個jar有不同的:版本+時間戳記(解決思路)

來源:互聯網
上載者:User

系統最佳化(一)Maven打包同一個jar有不同的:版本+時間戳記(解決思路)

解決:maven倉庫的ear裡面有很多個相同的jar(只是包含不同的:版本+時間戳記)

問題描述: 發現ear裡面有很多個相同的jar,只是包含不同的:版本+時間戳記,如所示:

(例如:itoo-basic-api有很多相同的jar,只是包含不同的:版本+時間戳記)

 

解決思路

用許可權的itoo-authority-usergroup-ear模組進行測試

 

1.懷疑是:maven的座標,時間戳記的問題

關鍵字:

maven snapshot

maven war中同一個jar有很多不同版本

maven 本地倉庫 同一個jar有很多不同的版本

maven 從nexus上更新下來有很多版本的jar

....

 

2.懷疑是:nexus的問題

懷疑nexus上ear的版本不是最新的。

故,在eclipse的ear的pom.xml中,右鍵Run As ---Maven build ----輸入”deploy”到nexus上。

後Jinkens上構建(省略)。

後查看:D:\itoo-maven-3.2.3\repository\com\tgb\***\0.0.1-SNAPSHOT中的jar是否包含很多個相同的jar,只是包含不同的:版本+時間戳記?

(答案:很多個相同的jar,只是包含不同的:版本+時間戳記)

 

3.懷疑是:Jinkens中配置問題

 

 

4.懷疑是:maven本地倉庫的問題

首先,刪除本地的maven倉庫中的tgb檔案夾。

 

後刪除:jenkins9中tmp_authority中的itoo-authority-usergroup-ear.ear


 

後Jinkens上構建(省略)。

後查看:D:\itoo-maven-3.2.3\repository\com\tgb\***\0.0.1-SNAPSHOT中的是否有:很多個相同的jar,只是包含不同的:版本+時間戳記?

(答案:是。Ear中有很多個相同的jar,只是包含不同的:版本+時間戳記)

5.懷疑是:maven中jar包依賴衝突的問題

(參照此圖)

 

先排除jar包衝突

後提交SVN代碼

後Jinkens上構建(省略)。

後查看:D:\itoo-maven-3.2.3\repository\com\tgb\***\0.0.1-SNAPSHOT中的jar是否包含:很多個相同的jar,只是包含不同的:版本+時間戳記?

 

(答案:是。Ear中有:很多個相同的jar,只是包含不同的:版本+時間戳記)

6.懷疑是:ear的pom檔案中maven外掛程式配置的問題

a) 首先將ear的pom.xml中添加中的代碼

b) 後提交SVN代碼

c) 此時構建分為兩種方式:

i.第一種:ear目錄下,cmd命令中,輸入:mvn clean install。

1. 後查看:D:\itoo-maven-3.2.3\repository\com\tgb\***\0.0.1-SNAPSHOT中的jar是否包含:很多個相同的jar,只是包含不同的:版本+時間戳記?

2.

3. (答案:某一功能的jar只有一個!且沒有:版本+時間戳記)

 

ii. 第二種:通過Jinkens重新構建(省略)。

1. 後查看:D:\itoo-maven-3.2.3\repository\com\tgb\***\0.0.1-SNAPSHOT中的jar是否包含:很多個相同的jar,只是包含不同的:版本+時間戳記?

2.

3. (答案:jar包個數減少,但是仍然含有:版本+時間戳記)

4. 幾乎所有的jar都是兩份:一個是***-0.0.1-SNAPSHOT.jar 和***-0.0.1-20150602.091811-14.jar

5. 猜測:此次配置是有效果的,但是可能受到該ear上一級的影響!

6. 故,測試itoo-tool(見下)

最終方案:修改itoo-root中的pom.xml中maven外掛程式配置

1) 用eclipse從SVN中下載itoo-root

2) 後對itoo-root中的pom.xml檔案做兩部修改:

a) 第一步:刪除原有關於maven外掛程式的配置

b)

c) 第二步:添加新的maven外掛程式的配置

d)

3) 後將修改後的pom.xml檔案提交到SVN

4) 後itoo-root的pom.xml中右鍵RunAs ---Maven build 中輸入“deploy”即可。

5) 後在Jinkens中的itoo模組的itoo-root,右鍵自動構建

6)

7) 後依次構建:core--web--ear

8)

9) 後在Jinkens伺服器中,檢查itoo-authority-usergroup-ear中的jar

10)

11)

12)Perfect!

總結

歸根到底,還是因為maven的外掛程式配置的問題。

很多時候,對於工具的使用,僅限於初步使用。這次在最佳化期間,收穫還是頗多的!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.