39

我正在尝试构建我的项目,但我得到了这个:

不可解析的父 POM:无法将工件 org.springframework.boot:spring-boot-starter-parent:pom:1.3.0.M3 从/到 spring-snapshots ( http://repo.spring.io/snapshot ) :repo.spring.io 和 'parent.relativePath' 指向没有本地 POM @ 第 16 行,第 10 列:未知主机 repo.spring.io -> [帮助 2]

这是我指定 pom.xml 的父级的方式:

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.3.0.M3</version>
    <relativePath></relativePath>
</parent>

是空的,因此它强制 maven 在远程存储库中查找父级。但是,它说repo.spring.io 是一个未知的主机

这是我在 pom.xml 中定义存储库的方式:

<repositories>
    <repository>
        <id>spring-snapshots</id>
        <url>http://repo.spring.io/snapshot</url>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </repository>
    <repository>
        <id>spring-milestones</id>
        <url>http://repo.spring.io/milestone</url>
    </repository>
</repositories>

<pluginRepositories>
    <pluginRepository>
        <id>spring-snapshots</id>
        <url>http://repo.spring.io/snapshot</url>
    </pluginRepository>
    <pluginRepository>
        <id>spring-milestones</id>
        <url>http://repo.spring.io/milestone</url>
    </pluginRepository>
</pluginRepositories>

有任何想法吗?

4

17 回答 17

36

显然这是您的互联网连接的问题。检查是否可以使用浏览器访问http://repo.spring.io 。如果是,请检查是否需要配置代理服务器。如果没有,您应该联系您的互联网提供商。

这是文档,如何为 Maven 配置代理服务器:https ://maven.apache.org/guides/mini/guide-proxies.html

于 2015-08-20T18:15:57.130 回答
19

对于任何偶然发现这个问题的人,我将发布类似问题的解决方案(除了uknown host部分之外,相同的错误消息)。

自 2020 年 1 月 15 日起,maven Central不再支持 HTTP,转而支持 HTTPS。因此,spring 存储库也切换到了 HTTPS

因此,解决方案是将 url 从 更改http://repo.spring.io/milestonehttps://repo.spring.io/milestone

于 2020-01-17T08:55:18.273 回答
8

问题在于您的项目无法完成 Maven 构建。要遵循的步骤:

  1. 右键单击应用程序和 RunAs maven 安装。
  2. 如果您在在线访问 repos 时遇到任何错误,请尝试在您的 .m2 目录下的 settings.xml 中提供代理。检查此链接以设置 maven build 的代理
  3. 完成后,尝试通过右键单击 Project 、 Maven->Update Maven Project 并选择代码库并选中 Force Update of Snapshot/Release 复选框来更新项目。

这将更新您的 Maven 构建,并且肯定会使用 pom.xml 删除您的错误

于 2017-11-11T09:03:52.237 回答
6

项目-> maven-> 更新项目-> 勾选所有希望离线的复选框,很快就会解决错误。

于 2017-05-25T10:46:52.970 回答
4

项目上的 Rigth 按钮 -> Maven -> 更新

于 2017-04-27T09:12:21.923 回答
2

就我而言,问题在于 pom.xml(java 1.8)和环境变量 JAVA_HOME/JDK_HOME(java 1.7)的 java 版本不匹配。将环境变量 JAVA_HOME 和 JDK_HOME 指向 Java 1.8 后,问题得到解决。

于 2019-06-17T18:34:53.583 回答
1

如果您正在使用docker-machineWindowsOSX上的 docker )。

目前 docker-machine 有一个错误,如果您在 wifi 网络或 wifi 和电缆之间切换,它会失去互联网连接。

确保重新启动 docker-machine

通常:docker-machine restart default

于 2016-01-19T12:32:48.167 回答
0

提醒一下:我尝试使用idea和import maven,遇到了同样的问题,我尝试了所有的解决方案,但都没有奏效。最后,我发现这是因为root访问权限...我以管理员访问权限打开了idea,一切正常,希望您不要像我一样傻...

于 2020-07-26T21:49:08.873 回答
0

如果以上所有东西都不起作用。尝试这个。如果您使用的是 IntelliJ。检查以下设置: 在此处输入图像描述

可能~/.m2/settings.xml是限制连接到互联网。

于 2020-08-08T08:48:23.743 回答
0

我面临着同样的问题。原因是互联网连接。更换ISP后就解决了。

于 2021-10-18T14:28:54.243 回答
0

如果您正在使用 docker 服务并且您已切换到其他网络。您需要重新启动 docker 服务。

服务泊坞窗重新启动

这解决了我在 docker 中的问题。

于 2020-04-27T08:14:10.953 回答
0

在出现“Non-resolvable parent POM: could not transfer artifact etc.”错误后,我发现我确实需要配置代理服务器。

但是,尽管重新启动等,错误仅在执行后才消失: mvn dependency:purge-local-repository

猜猜这与重新解析依赖关系有关: 关于清除本地存储库依赖关系的 Apache 文档

于 2021-09-01T16:32:43.123 回答
0

这对我有用!尝试导航到 Maven 选项卡,然后单击安装。完成后,再次尝试解决依赖关系。 在此处输入图像描述

于 2022-02-19T18:07:54.570 回答
0

只需右键单击 pom.xml > maven > update maven project > 检查 Snapshots/Releases 的强制更新

于 2021-07-10T22:23:57.960 回答
0

正如人们已经提到的,这可能是互联网问题或代理配置。
当我搜索相同的问题时,我发现了这个问题。就我而言,它是代理配置。
此处发布的答案并没有解决我的问题,因为每个链接都建议了一个显示用户名和密码的配置,我无法使用它。
我正在搜索它,发现要在 settings.xml 上进行配置,我需要进行一些更改。这是最终代码:

<profiles>
    <profile>
       <id>MavenRepository</id>
           <repositories>
            <repository>
                <id>central</id>
                <url>https://repo1.maven.org/maven2</url>
                <snapshots>
                    <enabled>false</enabled>
                </snapshots>
                <releases>
                    <enabled>true</enabled>
                </releases>
            </repository>
        </repositories>
    </profile>
</profiles>

<activeProfiles>
    <activeProfile>MavenRepository</activeProfile>
</activeProfiles>

我希望有用。

于 2020-04-03T13:30:16.167 回答
-1

在 pom.xml 中(在 eclipse 中加载有效的 pom.xml 后),您可能会在中央存储库下看到它“ http://repo.maven.apache.org/maven2 ”而不是“ https://repo.maven.apache ” .org/maven2 "。修理它

于 2020-06-15T10:23:18.643 回答
-1

降级您的版本

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version><change this version></version>
        <relativePath /> <!-- lookup parent from repository -->
    </parent>

构建和撤消版本,构建。2.1.6.RELEASE 到 1.3.3.RELEASE 构建撤消 ​​1.3.3 到 2.1.6 构建(在我的情况下问题已解决)它帮助了我们。

于 2020-02-24T13:48:00.837 回答