Maven项目构建报错:无法获取spring-boot-starter-parent POM(权限拒绝)
Maven构建权限拒绝问题排查与解决
问题描述
构建Maven项目时触发如下错误:
Could not transfer artifact org.springframework.boot:spring-boot-starter-parent:pom:3.1.11 from/to central (https://repo.maven.apache.org/maven2): Permission denied:
已确认可通过浏览器访问Maven中央仓库,但项目构建失败,项目POM文件内容如下:
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>3.1.11</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.iso8583</groupId> <artifactId>iso8583</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <name>iso8583</name> <description>CRUD Rest API for ISO8583 implementation</description> <properties> <java.version>17</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.postgresql</groupId> <artifactId>postgresql</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <image> <builder>paketobuildpacks/builder-jammy-base:latest</builder> </image> </configuration> </plugin> </plugins> </build> </project>
解决步骤
- 检查Maven代理配置:打开
settings.xml(路径为~/.m2/settings.xml或Maven安装目录下的conf/settings.xml),确认代理配置是否正确,若无需代理则直接注释掉<proxy>节点。 - 修复本地仓库权限:确保当前用户对Maven本地仓库目录(默认
~/.m2/repository)拥有读写权限,执行命令:chmod -R 755 ~/.m2/repository - 清理缓存并重试构建:删除本地仓库中
org/springframework/boot/spring-boot-starter-parent/3.1.11目录,然后执行强制更新构建命令:mvn clean install -U - 排查网络拦截:临时关闭本地防火墙、杀毒软件或安全工具,测试是否是网络请求被拦截导致。
- 临时切换HTTP仓库测试:在POM中添加HTTP协议的中央仓库配置(仅用于测试,生产环境建议用HTTPS):
<repositories> <repository> <id>central</id> <url>http://repo.maven.apache.org/maven2</url> <releases> <enabled>true</enabled> </releases> </repository> </repositories>
内容的提问来源于stack exchange,提问作者Abdellah ERJALI
相关产品推荐
相关产品推荐

