Gradle下载spring包出现Received status code 401 from server: Unauthorized

大家在下载spring家族源码的时候,在进行gradle构建的时候,会出现y:

Could not GET 'https://repo.spring.io/libs-release/xxxxx'. Received status code 401 from server: Unauthorized
Disable Gradle 'offline mode' and sync project

这个原因是spring从2021.2.21日开始不再支持匿名用户访问/libs-release的目录了。

We will no longer support anonymous download of 3rd-party Maven Central artifacts from repo.spring.io, even if previously cached by an authenticated user. They should be resolved instead from the central servers.

几种解决方法:

  • 如果是/libs-snapshot 或者 /libs-milestone,需要修改为/snapshot 或者 /milestone

  • 或者讲repository改为阿里云的仓库地址c

        //本地仓库,地址是maven本地仓库路径
        mavenLocal()
        //maven私服。此处设置为ali的旧库,地址是url
        maven{ url "http://maven.aliyun.com/nexus/content/groups/public" }
        //阿里云新库
        maven { url "https://maven.aliyun.com/repository/central" }
        maven { url "https://maven.aliyun.com/repository/google" }
        maven { url "https://maven.aliyun.com/repository/gradle-plugin" }
        maven { url "https://maven.aliyun.com/repository/jcenter" }
        maven { url "https://maven.aliyun.com/repository/spring" }
        maven { url "https://maven.aliyun.com/repository/spring-plugin" }
        maven { url "https://maven.aliyun.com/repository/public" }
        maven { url "https://maven.aliyun.com/repository/releases" }
        maven { url "https://maven.aliyun.com/repository/snapshots" }
        maven { url "https://maven.aliyun.com/repository/grails-core" }
        maven { url "https://maven.aliyun.com/repository/mapr-public" }
        maven { url "https://maven.aliyun.com/repository/apache-snapshots" }
  • 如果阿里云仓库里面没有,IDE还在报401的错误,也就是几乎没有办法下载到依赖的。需要找相关spring家族源码的更高版本。比如:我找的是spring-session2.1.2一直有这个问题,下载2.7.x的源码去变异

试了很多种办法,普通用户没有办法注册repos.spring.io的账号的。所以如果想通过manve中指定账号和密码的方法比较困难。

更多信息详见spring官方文档y:https://spring.io/blog/2020/10/29/notice-of-permissions-changes-to-repo-spring-io-fall-and-winter-2020

你可能感兴趣的:(java源码,java,开发语言,spring,gradle)