Maven Dependency ‘xxx‘ not found 依赖报错

今天从github上拉取了一个开源项目,但是maven pom.xml报红;尝试过很多种方案,都没有生效 最后一种解决了我的问题;

方案一:(最常见,但一般没啥用)

reimport maven

Maven Dependency ‘xxx‘ not found 依赖报错_第1张图片

方案二:maven clean install

Maven Dependency ‘xxx‘ not found 依赖报错_第2张图片

方案三:修改setting.xml


  
    
  
  aliyunmaven
  *
  阿里云公共仓库
  https://maven.aliyun.com/repository/public




        
        
            repo1
            central
            Human Readable Name for this Mirror.
            http://repo1.maven.org/maven2/
        


        
        
            repo2
            central
            Human Readable Name for this Mirror.
            http://repo2.maven.org/maven2/
        

  

然后 在idea 的File ->Settings Maven中修改该工程所使用的setting.xml文件(但以上的阿里云镜像只会指向central库,因此可能会出现部分不在central库的依赖无法下载--可参照方法五解决)

Maven Dependency ‘xxx‘ not found 依赖报错_第3张图片

方案四:修改pom.xml

在maven仓库中:http://mvnrepository.com/搜索相关的依赖

如com.github.penggle kaptcha依赖缺失 点击

Maven Dependency ‘xxx‘ not found 依赖报错_第4张图片

点击 进入com.github.penggle kaptcha 然后选中对应版本的repository

Maven Dependency ‘xxx‘ not found 依赖报错_第5张图片

将以下部分作为id 与uri 写入pom文件中

Maven Dependency ‘xxx‘ not found 依赖报错_第6张图片

 
        
            Central repository
            https://repo1.maven.org/maven2/
        
    
Maven Dependency ‘xxx‘ not found 依赖报错_第7张图片

方案五:将pom文件与jar包下载到maven仓库对应位置中

Maven Dependency ‘xxx‘ not found 依赖报错_第8张图片

方案六:依赖管理器--父子依赖问题

如果pom.xml中使用了标签,dependencyManagement是对依赖的声明,判断其存在与否无非就是去本地仓库查找,若发现没有,则飘红报错 ;因此如果直接使用dependencyManagement标签可能尚未引入相关依赖,因此可以将这个标签先去除 再reimport maven,下载完依赖后再重新加上该标签

小知识:

①dependencyManagement埋只是声明依赖, 并不实现引入,因此子项目需要显示的声明需要用的依赖。

②如果子项目中指定了版本号,那么会使用子项目中指定的jar版本。

方案七:查看maven版本

如果maven版本过低,可能会导致依赖引入失败

方案八:如果是团队项目,可直接copy可正确运行的项目的仓库

你可能感兴趣的:(maven,java,开发语言)