系统优化(一)Maven打包同一个jar有不同的:版本号+时间戳(解决思路)
解决:maven仓库的ear里面有非常多个同样的jar(仅仅是包括不同的:版本号+时间戳)
问题描写叙述: 发现ear里面有非常多个同样的jar,仅仅是包括不同的:版本号+时间戳,例如以下图所看到的:
(比如:itoo-basic-api有非常多同样的jar,仅仅是包括不同的:版本号+时间戳)
![]()
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" width="700" height="600">
解决思路
用权限的itoo-authority-usergroup-ear模块进行測试
1.怀疑是:maven的坐标。时间戳的问题
keyword:
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
![]()
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" width="700" height="500">
后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中加入截图中的代码
![]()
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">
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) 后在Jinkensserver中。检查itoo-authority-usergroup-ear中的jar
10)
11)
12)Perfect!
总结
归根究竟,还是由于maven的插件配置的问题。
非常多时候,对于工具的使用,仅限于初步使用。这次在优化期间,收获还是颇多的!
系统优化(一)Maven打包同一个jar有不同的:版本号+时间戳(解决思路)的更多相关文章
- Maven打包同一个jar有不同的:版本+时间戳(解决思路)
在我们的开发过程中,目前流行的版本控制工具maven,在项目开发阶段,大家都是通过发布SNAPSHOT快照版进行相互模块之间的依赖开发, 这个时候就会有一个问题,要是一天构建多次的快照版,会发现在项目 ...
- SpringBoot Maven打包项目JAR/WAR
安装Maven 1. 登录 http://maven.apache.org/download.cgi 2. 下载 maven 压缩包 3. 解压apache-maven-3.6.0-bin.tar.g ...
- IDEA Maven 打包运行 jar java.io.FileNotFoundException: 问题?
当 使用 idea maven 将项目打包运行的时候,能够成功运行,但是总会跑到 xxx\xxx\lib 下 找jar包 如下异常: java.io.FileNotFoundException: D: ...
- Maven打包成Jar文件时依赖包的问题
我们项目中使用到第三方的库文件,这些jar库文件并没有放到Maven中央库上,导致我们需要在项目中自己配置使用.我们的两三个开发人员对Java都是很熟,因此在使用中遇到了一些问题,表现在:在本地中引入 ...
- 正确配置jstl的maven依赖,jar包冲突的问题终于解决啦
困扰了两天的问题,非常头疼,今天终于有了解决思路了,说到底,还是对maven不够了解吧.总是抱怨maven不好用,出现各种无厘头的问题,原来这些都是归于对它不够了解不够熟悉,它提供了很好的解决思路,只 ...
- [DEBUG] spring boot在eclipse中用maven打包成jar访问templates报500错误
更新:打war包的话只要把html文件放在resources/templates下即可,根本不需要放外面. 配置application.yml和templates放外面这种做法,打war包确实不行. ...
- Spring Boot 使用maven打包成jar
1.application.properties加入如下配置 server.port= 2.修改pom.xml <?xml version="1.0" encoding=&q ...
- SpringBoot通过maven打包成jar,设定主清单属性。
文章目录 原来普通的jar包一直是 <build> <plugins> <plugin> <groupId>org.apache.maven.plugi ...
- maven打包(jar)类型错误
maven项目打包测试环境时部署发现是开发环境.确认打包命令无误, 此情况下将target内容全部删除,重新打包即可.是全部删除.
随机推荐
- java 面试题整理
java面试题 1.接口和抽象类的区别 抽象类 接口 抽象类中可以有默认方法 在java8之前,不能有默认方法 extends implements 抽象类中可以有构造器 接口中不能有构造器 抽象类中 ...
- vue-gemini-scrollbar(vue组件-自定义滚动条)
vue-gemini-scrollbar(vue组件-自定义滚动条) https://segmentfault.com/a/1190000013338560
- 暑假集训 || 2-SAT
推荐论文:https://blog.csdn.net/zixiaqian/article/details/4492926 2-SAT问题是2判定性问题,给出n个集合,每个集合中有两个元素,两个元素之一 ...
- 写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度
import java.util.Scanner; /** * [程序38] * * 题目:写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度. * * @author Jame ...
- 02.28 day03
print(1 or 3 > 2 and 4 < 5 or 6 and 2 < 7)## while True:# print(11)# print(22)# # break# # ...
- 什么是session?
Session一般译作会话.从不同的层面看待session,它有着类似但不全然相同的含义.比如,在web应用的用户看来,他打开浏览器访问一个电子商务网站,登录.并完成购物直到关闭浏览器,这是一个会话. ...
- vs 2012安装ASP.NET MVC5
VS2012能使用MVC5开发,但VS2012不自带MVC5,需要安装“用于 Visual Studio 2012 的 ASP.NET 和 Web 工具 2013.1” 从下面提供的链接下载安装: h ...
- Elasticsearch 索引管理和内核探秘
1. 创建索引,修改索引,删除索引 //创建索引 PUT /my_index { "settings": { , }, "mappings": { " ...
- [题解] codevs 1486 愚蠢的矿工
http://codevs.cn/problem/1486/ 我们比较熟悉二叉树,题目中给出的是一棵多叉树,我们需要将这可二叉树改造成二叉树. 二叉树可以为这样的: 父亲结点左边储存儿子,右边储存兄弟 ...
- GIT的简介
本文来自:https://www.breakyizhan.com/git/32.html 这篇GIT教程提供了GIT的基本和高级概念,主要是面向GIT的初学者和专业人士来编写的. 什么是GIT呢? G ...