Java项目切换maven编译时出现大量重复jar包

最近公司的项目准备使用maven,切换倒很简单,但是编译时却发现一个很怪异的现象,就是POM中并未配置的jar包或者未配置该版本的jar包还是出现在了lib文件夹下,一开始以为是exclusions没设置好,但经过反复试验发现不能完全解决问题,有些属于项目组自定义的jar包也有多个版本,而且有些电脑上编译却没有问题,于是想到是不是本地maven仓库坏了,删除重新下载,也不行,后来偶然看到一篇帖子说是因为同一个文件夹下有重名项目导致maven会优先引用该项目(我的项目使用git管理,在git文件夹下下载了项目的多个分支),虽然和我遇到的问题并不太一样,不过也试着把要切换的maven分支放到了另一个单独的文件夹下,没想到居然就解决了,莫名其妙重复的jar包没有了,但是目前还只知道解决这个问题的办法却不知道为什么会这样,用的是eclipse的maven插件embedded3.0.2,难道是maven版本的bug?

时间: 2024-11-06 16:19:08

Java项目切换maven编译时出现大量重复jar包的相关文章

利用Eclipse+maven编译Jedis源码成jar包和源码jar包

在GitHub上面,有很多源码都是maven项目,但是很多都没有jar包.去网上找到话第一个是比较难找,第二个是怕不够原汁原味.我们通过maven+Eclipse可以可视化将maven项目生成jar库包还有源码jar包. 1.下载maven 下载地址:http://maven.apache.org/download.html 2,解压 到本地: 3,配置环境变量 3-1,要先配置java-home变量. 新建系统变量,写入java-home值. 在系统变量的path里面添加  %JAVA_HOM

将Java项目从maven迁移到gradle

将Java项目从maven迁移到gradle 如何将一个java项目从maven迁移到gradle呢?gradle集成了一个很方便的插件:Build Init Plugin,使用这个插件可以很方便地创建一个新的gradle项目,或者将其它类型的项目转换为gradle项目. 要将maven项目转换为gradle项目,只需要在项目的pom文件所在的目录下执行以下命令: $ gradle init --type pom 上面的命令会根据pom文件自动生成gradle项目所需的文件和配置,然后以grad

[转]maven编译时出现读取XXX时出错invalid LOC header (bad signature)

maven编译时出现读取XXX时出错invalid LOC header (bad signature) 一.发现问题右击pom.xml,run as —> maven install,会看到console中有时报mavenRepository\repos\org\mortbay\jetty\servlet-api-2.5\6.1H.14.1\servlet-api-2.5-6.1H.14.1.jar时出错等某些包的报错等类似信息,pom.xml显示红叉. 二.原因分析该包没有下载正确. 三.解

Maven仓库理解、如何引入本地包、Maven多种方式打可执行jar包

转载博客:http://quicker.iteye.com/blog/2319947 有关MAVEN仓库的理解参见:http://blog.csdn.net/wanghantong/article/details/36427433 MAVEN依赖关系中Scope的作用 Java代码   Dependency Scope 在POM 4中,<dependency>中还引入了<scope>,它主要管理依赖的部署.目前依赖项的作用域<scope>可以使用5个值: 在定义项目的依

在Maven中新增自定的jar包

引言: 在软件项目中,Maven提供了一体化的类库管理系统,非常实用.但是,如果新增的类库jar在网络上无法获取到,如何在本地按照Maven的规则添加进来呢?本文将通过一个小例子展示新增过程. 背景介绍: 一个Maven管理的Java项目,提供一个系统级别的POM.xml,其中定义了整个项目使用的类库. 需求: 需要添加一个自定义的类库到当前项目中.假定当前的类库文件名为:abc.jar.. 如何将类库添加进来? 1.  找到当前Maven的Repository类库位置 一般默认情况下,在win

maven工程打包成runnable的jar包,拷贝资源和依赖jar包

eclipse下新建maven工程,生成runnable的jar包.之前一直是手动拷贝依赖的jar包和资源文件,烦得要死.上网可劲查了一下.解决方案如下. 在pom的配置文件中做如下配置: <build> <finalName>...</finalName> <sourceDirectory>src/main/java</sourceDirectory> <resources> <!-- 控制资源文件的拷贝 --> <

既使用maven又使用lib下的Jar包

maven 使用本地包 lib jar包 依赖一个lib目录 解决方法: # 把本地的lib加入maven编译时的依赖路径 From:http://blog.chinaunix.net/uid-23173926-id-2942789.html 有些项目的jar包不是在maven服务器上能够下载的,那么需要将这样的包放在项目的lib目录下, 不过这样会导致maven打包时找不到包,报错.可以通过下面的配置解决这个问题 <build>         <plugins>        

maven命令学习-发布上传jar包-deploy

Maven学习六之利用mvn deploy命令上传包 转http://blog.csdn.net/woshixuye/article/details/8133050 mvn:deploy在整合或者发布环境下执行,将最终版本的包拷贝到远程的repository,使得其他的开发者或者工程可以共享. 以将ojdbc14传到nexus中的thirdparty为例 一 配置settings.xml 因为nexus是需要登陆操作,当然可以通过配置免登陆,这是后话. 在settings.xml的<server

用Maven打包发布可执行的jar包

项目有个需求,要把当前项目的代码和依赖打包成一个jar包,再把jar包和一些相关文件一起打包成一个tar 这里用到了两个插件,shade 和assembly,shade负责生成jar包,assembly负责打包成tar.pom.xml配置如下:     <build>         <plugins>              <plugin>                 <groupId>org.apache.maven.plugins</gr