码迷,mamicode.com
首页 > 编程语言 > 详细

系统优化(一)Maven打包同一个jar有不同的:版本+时间戳(解决思路)

时间:2015-07-08 22:37:06      阅读:209      评论:0      收藏:0      [点我收藏+]

标签:

解决: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的插件配置的问题。

很多时候,对于工具的使用,仅限于初步使用。这次在优化期间,收获还是颇多的!


版权声明:本文为博主原创文章,未经博主允许不得转载。

系统优化(一)Maven打包同一个jar有不同的:版本+时间戳(解决思路)

标签:

原文地址:http://blog.csdn.net/zhaolijing2012/article/details/46798647

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!