关于maven使用过程中无法导入依赖的一些总结
maven使用过程中无法导入依赖的一些总结
作为一名java开发的新手,在学习中难免遇见各种问题,在此总结一下。
在使用maven过程中总是碰见某些依赖导不进去的问题,本人使用的是idea2017、maven3.2版本,通过网上搜索和自己的经验归纳为一下几点:
1.settings.xml文件中远程仓库地址的设置
在maven仓库的配置文件中,一般设置远程仓库地址为阿里云的私服,国外的网站也可以就是比较慢,以下为阿里的镜像
1 2 3 4 5 6 | < mirror > < id >nexus-aliyun</ id > < mirrorOf >*</ mirrorOf > < name >Nexus aliyun</ name > < url >http://maven.aliyun.com/nexus/content/groups/public</ url > </ mirror > |
2.有些情况可能是仓库中的没有下载成功的文件导致的,需要清理仓库。
以下是我写的一个批处理程序用来清理仓库
1 2 3 4 5 6 7 8 9 | @echo off title 清理仓库未下载完成的文件 set REPOSITORY_PATH=E:\Program Files\maven3.2\apache-maven-3.2.3\repository echo 正在搜索中..... for /f "usebackq delims==" %%i in ('dir /s "%REPOSITORY_PATH%\*lastUpdated*"') do ( del /s %%i ) pause rem REPOSITORY_PATH是你自己的仓库地址 |
3.可能是版本太低的bug,建议换一个更高版本的maven
我的解决办法是在idea中新建一个工程,再导入那些报错的依赖,手动导入一下就成功了
4.手动用maven命令导入
例如:
mvn install:install-file -Dfile=D:\spring-framework-4.3.13.RELEASE\libs\spring-test-4.3.13.RELEASE.jar -DgroupId=libs -DartifactId=spring-test -Dversion=4.3.13.RELEASE -Dpackaging=jar
这个命令就不细说了,网上有详细的说明
maven不自动导入依赖问题
最近做项目时直接复制了别人的pom文件的内容,可是复制过来的Maven依赖一直爆红,不下载依赖。
1 2 3 4 5 6 7 8 9 10 11 12 | < dependencyManagement > < dependencies > <!--spring boot 2.2.2--> < dependency > < groupId >org.springframework.boot</ groupId > < artifactId >spring-boot-dependencies</ artifactId > < version >2.2.2.RELEASE</ version > < type >pom</ type > < scope >import</ scope > </ dependency > </ dependencies > </ dependencyManagement > |
因为之前没有学习过maven,都是直接复制依赖就可以用了,所以对maven的各种标签不是很熟悉。
开始以为是中央仓库太卡了下不动,所以找了各种办法,网上比较多的说法也是说使用aliyun的镜像仓库。后来我又是配置mirror,又是重下载新版本maven的。
1 2 3 4 5 6 | < mirror > < id >aliyunmaven</ id > < mirrorOf >*</ mirrorOf > < name >阿里云公共仓库</ name > < url >https://maven.aliyun.com/repository/public</ url > </ mirror > |
一顿操作后都不行.
最后还是不行最后发现根本就不是卡住下不动,而是连下载都没有开始,于是开始改标签。最终把dependencyManagement标签删掉后居然开始下载了。后面查了一下才发现dependencyManagement用于父工程管理依赖的,用于统一管理jar的版本,在父工程的时候只是用来声明,并不会下载,只有子工程要用到的时候才会去下载。而本地又没用这些依赖的jar版本,所以才会一直爆红。
解决办法
是将dependencyManagement标签去掉,jar包就会开始下载了,等下载完成后再加上dependencyManagement。
1 2 3 4 5 6 7 8 9 10 | < dependencies > <!--spring boot 2.2.2--> < dependency > < groupId >org.springframework.boot</ groupId > < artifactId >spring-boot-dependencies</ artifactId > < version >2.2.2.RELEASE</ version > < type >pom</ type > < scope >import</ scope > </ dependency > </ dependencies > |
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
微信公众号搜索 “ 脚本之家 ” ,选择关注
程序猿的那些事、送书等活动等着你
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请将相关资料发送至 reterry123@163.com 进行投诉反馈,一经查实,立即处理!
相关文章
SpringBoot2 整合Nacos组件及环境搭建和入门案例解析
这篇文章主要介绍了SpringBoot2 整合Nacos组件,环境搭建和入门案例详解,在整合springboot2时注意版本 0.2.x.RELEASE 对应的是 Spring Boot 2.x 版本,版本 0.1.x.RELEASE 对应的是 Spring Boot 1.x 版本,具体内容详情跟随小编一起看看吧2022-03-03解决IDEA启动springboot项目报错java.lang.ClassNotFoundException: jav
这篇文章主要介绍了解决IDEA启动springboot项目报错java.lang.ClassNotFoundException: javax.servlet.ServletContext问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2024-01-01
最新评论