解决Maven依赖下载不全的问题

背景描述

在日常学习过程中使用Maven构建SpringBoot+SpringCloud服务时,有时会使用非正式版的SpringBoot和SpringCloud(非正式版是指不是最终发布的版本,而是测试版或里程碑版本,例如:2.0.0.BUILD-SNAPSHOT、Finchley.BUILD-SNAPSHOT、2.0.0.M3、Finchley.M2这些都属于非正式版,而像1.5.16.RELEASE这样的RELEASE版本即为正式版),一般在工作中构建微服务都会使用正式版本进行构建,因为正式版本稳定,Bug少。而我在学习过程中使用了SpringBoot:2.0.0.BUILD-SNAPSHOT和SpringCloud:Finchley.BUILD-SNAPSHOT这两个非正式版本,结果发现有好多依赖下载不下来,比如:spring-cloud-starter-openfeign和spring-boot-starter-data-jpa在当前版本中怎么都下载不下来,下面说说这些依赖无法下载的原因和解决办法。

为啥依赖会下载不下来呢?

首先确定你的GAV是正确的(GAV:groupId、artifactId、version),其次确定你刷新了Pom文件

如果上面两点确认无误,但依赖还是下载不下来,那么唯一可能的原因就是,你没有配置非正式版本的repository地址和pluginRepository地址

由于使用的是非正式版,大部分依赖也都是非正式版本的依赖,而Maven默认会去正式版本的库里找相应的依赖,而正式版本的repository中肯定不会有非正式版本的依赖,所以导致你的依赖一直无法成功下载

那怎么解决呢?

在你的Pom文件中增加以下配置,即非正式版本库的相关配置:

<repositories>
    <repository>
        <id>spring-snapshots</id>
        <name>Spring Snapshots</name>
        <url>https://repo.spring.io/snapshot</url>
        <snapshots>
        <enabled>true</enabled>
        </snapshots>
    </repository>
    <repository>
        <id>spring-milestones</id>
        <name>Spring Milestones</name>
        <url>https://repo.spring.io/milestone</url>
    </repository>
</repositories>
<pluginRepositories>
    <pluginRepository>
        <id>spring-snapshots</id>
        <name>Spring Snapshots</name>
        <url>https://repo.spring.io/snapshot</url>
        <snapshots>
        <enabled>true</enabled>
        </snapshots>
    </pluginRepository>
    <pluginRepository>
        <id>spring-milestones</id>
        <name>Spring Milestones</name>
        <url>https://repo.spring.io/milestone</url>
    </pluginRepository>
</pluginRepositories>

然后刷新Pom文件,之前下载失败的依赖都可以顺利下载了

原文地址:https://www.cnblogs.com/zkm1992/p/10869829.html

时间: 2024-07-29 21:10:56

解决Maven依赖下载不全的问题的相关文章

解决Maven无法下载fastdfs-client-java依赖,Dependency &#39;org.csource:fastdfs-client-java:1.27-SNAPSHOT&#39; not found.

因为fastdfs-client-java-1.27-SNAPSHOT.jar这个依赖包在maven中央仓库是没有的, 需要自己编译源码成jar本地安装到maven 的本地仓库,安装完以后就能正常引用了(注意:本地必须安装了Maven,并配置好Maven环境变量) <dependency> <groupId>org.csource</groupId> <artifactId>fastdfs-client-java</artifactId> <

如何快速的解决Maven依赖冲突

为什么会出现依赖冲突 首先要说明Maven的依赖管理,具体的可以参考这边 Maven学习--依赖管理 这篇文章,maven在依赖冲管理中有一下几个原则. 依赖是使用Maven坐标来定位的,而Maven坐标主要由GAV(groupId, artifactId, version)构成.如果两个相同的依赖包,如果groupId, artifactId, version不同,那么maven也认为这两个是不同的. 依赖会传递,A依赖了B,B依赖了C,那么A的依赖中就会出现B和C. Maven对同一个gro

IDEA 解决 Maven 依赖冲突的高能神器,这一篇够不够?

? 1.何为依赖冲突 Maven是个很好用的依赖管理工具,但是再好的东西也不是完美的.Maven的依赖机制会导致Jar包的冲突.举个例子,现在你的项目中,使用了两个Jar包,分别是A和B.现在A需要依赖另一个Jar包C,B也需要依赖C.但是A依赖的C的版本是1.0,B依赖的C的版本是2.0.这时候,Maven会将这1.0的C和2.0的C都下载到你的项目中,这样你的项目中就存在了不同版本的C,这时Maven会依据依赖路径最短优先原则,来决定使用哪个版本的Jar包,而另一个无用的Jar包则未被使用,

解决Maven不能下载“oracle、aspectjweaver、com.springsource.net.sf.cglib”jar

鸣谢网址:http://www.cnblogs.com/dongyangbolg/p/3455422.html http://www.cnblogs.com/ysq0908/p/4737977.html ------------------------------------------------------------------ 一.问题描述 Maven下载“oracle14-10.2.0.1.0.jar”.“aspectjweaver-1.8.0.jar”.“com.springsour

解决maven无法下载oraclejar包的问题

我的项目用的是maven管理jar包,因为一开始使用的是mysql,后面就需要连接oracle,于是我在maven里添上这句代码 <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc14</artifactId> <version>10.2.0.4.0</version> <scope>test</scope> </depen

Maven 依赖下载失败的解决办法

Maven 项目根目录下 mvn" clean install -U 如果是 IDEA 内置的可以这样 "C:\Program Files\JetBrains\IntelliJ IDEA 2019.3\plugins\maven\lib\maven3\bin\mvn" clean install -U 原文地址:https://www.cnblogs.com/seliote/p/11960870.html

解决Maven依赖本地仓库eclipse报错的问题

一.应用场景 有时候项目报红色的感叹号错误也是由于项目中没有导入相关jar报导致报错 为了使用maven强大的包依赖管理和项目管理功能,故在项目中使用maven2作为项目建构工具. 但是我的项目在内网构建,为了能使用maven2,只能使用本地仓库依赖策略. 但是,有时候明明本地仓库确确实实存在相应的依赖包,但是在eclipse环境下依然会报错,即:在pom.xml显示错误提示信息. 经过我的实践证明,可以通过如下方式解决. 二.示例讲解 以依赖commons-io-2.0.1为例讲解: 在pom

解决maven无法下载jar的问题

自己下载jar包导入到本地仓库,但是不能手动的添加文件夹和pom.xml文件,这样maven还是找不到的. 原则上来说maven是不需要这么做的,因为pom.xml中的依赖的jar包会自动 实现从中央仓库下载到本地仓库,在setting中会有设置,如果本地仓库没有,就会去setting中下载jar包,如果还是没有那么就会报错.所以就 需要自己下载jar包,实现自行导入jar包. 具体步骤: 使用命令: mvn install:install-file  -Dfile=D:/jar/xxx.jar

解决maven依赖冲突

今天新建了一个项目,初始化了一下,发现跑不起来. 报错信息 java.lang.ClassNotFoundException: org.mybatis.logging.LoggerFactory pom文件中有mybatis-plus-boot-starter 按道理来说是不应该出现这种情况的 上网搜了一下,发现各种各样的说法都有,没啥头绪. 冷静下来思考一下,虽然百度上各种各样的说法都有,但是归总一下,其实都是在说pom文件的依赖有问题. 所以我们应当看下pom文件中有没有依赖冲突. 下好ma