Maven 项目 无缘无故报错:版本冲突,其他机器上正常-提交的时候报冲突怎么也解决不掉

2023-02-17,,,,

2018年:

maven突然之间报错了,显示版本冲突,但是其他的机器是好的,

使用命令:mvn compile -P dev -e;

看看测试环境有没有问题,还是有问题。而且,刚开始只是报错:error,连错误原因都不提。

后来把原来的项目删掉,然后执行:mvn compile -P dev -e

开始出现错误的原因了,说是:com.sankuai.qcs 底下的某个包 引用冲突。

后来找到这个包的本地仓库的位置: /Users/yinfuqing/.m2/repository/com/sankuai/qcs

把这个qcs的包整个删掉,这样下次编译的时候,发现本地没有,会先从服务器下载下来,然后在引用。

执行:mvn compile -P dev -e ,编译通过了;

2019年又碰上了,我的方法最终是先把自己做的备份。然后把本地的项目全部删除,在重新下载就好了。

2019 -03-05

又出现了版本冲突,我发现个问题,编译的时候竟然是success的,但是 在运行的时候还是报错,

后来发现是在dependencyManagement里面定义了,但是在外面没有引用:

这是我的:

   <dependency>
<groupId>com.meituan.mafka</groupId>
<artifactId>mafka-client_2.</artifactId>
</dependency>

就是这个,东西,因为在inf-bom中定义了所以不用指定版本号,但是并没有显示的引用这个包,所以运行时报错了

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.</modelVersion> <groupId>com.sankuai.qcs</groupId>
<artifactId>qcs.regulation.light</artifactId>
<version>0.0.-SNAPSHOT</version>
<packaging>jar</packaging> <name>light</name>
<description>project for Spring Boot</description> <parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0..RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent> <properties>
<project.build.sourceEncoding>UTF-</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<inf-bom.version>1.3.9.1</inf-bom.version>
</properties> <dependencyManagement>
<dependencies>
<dependency>
<groupId>com.sankuai</groupId>
<artifactId>inf-bom</artifactId>
<version>${inf-bom.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency> </dependencies>
</dependencyManagement> <dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency> <!-- starter-log4j2 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j2</artifactId>
</dependency> <dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency> <dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.3</version>
</dependency> <!-- Json -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.</version>
</dependency> <dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.9.</version>
</dependency> <dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.</version>
</dependency> <dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.9.</version>
</dependency> <dependency>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>1.6</version>
</dependency> <!-- mafka -->
<dependency>
<groupId>com.sankuai.octo</groupId>
<artifactId>idl-common</artifactId>
</dependency> <dependency>
<groupId>com.sankuai.octo</groupId>
<artifactId>idl-sgagent</artifactId>
</dependency> <dependency>
<groupId>com.sankuai.octo</groupId>
<artifactId>mns-invoker</artifactId>
</dependency> <dependency>
<groupId>com.sankuai.wm</groupId>
<artifactId>retail.mq.client</artifactId>
<version>1.1.-SNAPSHOT</version>
<exclusions>
<exclusion>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
</exclusion>
<exclusion>
<groupId>com.sankuai.wm</groupId>
<artifactId>retail.mq.mafka</artifactId>
</exclusion>
<exclusion>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
</exclusion>
<exclusion>
<groupId>com.meituan.mafka</groupId>
<artifactId>mafka-client_2.</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
</exclusions>
</dependency> <dependency>
<groupId>com.meituan.mafka</groupId>
<artifactId>mafka-client_2.</artifactId>
</dependency>
<dependency>
<groupId>com.meituan.mtrace</groupId>
<artifactId>mtrace</artifactId>
</dependency>
<dependency>
<groupId>com.meituan.mtrace</groupId>
<artifactId>mtrace-http</artifactId>
</dependency> <dependency>
<groupId>com.sankuai.wm</groupId>
<artifactId>retail.mq.mafka</artifactId>
<version>1.1.-SNAPSHOT</version>
<exclusions>
<exclusion>
<groupId>com.meituan.mafka</groupId>
<artifactId>mafka-client_2.</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
</exclusions>
</dependency> <!-- log4j --> <dependency>
<groupId>com.meituan.inf</groupId>
<artifactId>xmd-log4j2</artifactId>
</dependency>
<!--如果线上服务已接入scribe-log4j2,请升级到本版本。注意groupId已变更-->
<dependency>
<groupId>com.meituan.log</groupId>
<artifactId>scribe-log4j2</artifactId>
<version>1.3.</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
</exclusions>
</dependency> <!--<dependency>-->
<!--<groupId>org.slf4j</groupId>-->
<!--<artifactId>slf4j-log4j12</artifactId>-->
<!--<version>1.7.</version>-->
<!--</dependency>--> </dependencies> <build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build> </project>

其中:

 <parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0..RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>

指的是下面的spring 都不用指定版本号了,就按照2.0.3 就可以了;

参考:Spring Boot —— spring-boot-starter-parent

<!--
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #000000; background-color: #ffffff}
span.s1 {font-variant-ligatures: no-common-ligatures}
-->

Maven 项目 无缘无故报错:版本冲突,其他机器上正常-提交的时候报冲突怎么也解决不掉的相关教程结束。

《Maven 项目 无缘无故报错:版本冲突,其他机器上正常-提交的时候报冲突怎么也解决不掉.doc》

下载本文的Word格式文档,以方便收藏与打印。