【问题标题】:Non-resolvable parent POM不可解析的父 POM
【发布时间】:2023-04-01 18:42:01
【问题描述】:

我正在尝试按照http://www.mulesoft.org/documentation/display/current/Creating+a+Connector+Project 教程为 mule 开发自定义连接器。 如教程所示,我是通过命令行创建项目,通过执行

mvn archetype:generate
    -DarchetypeGroupId=org.mule.tools.devkit
    -DarchetypeArtifactId=mule-devkit-archetype-cloud-connector
    -DarchetypeVersion=3.4.3
    -DgroupId=org.hello
    -DartifactId=hello-connector
    -Dversion=1.0-SNAPSHOT
    -DmuleConnectorName=Hello
    -Dpackage=org.hello
    -DarchetypeRepository=http://repository.mulesoft.org/releases

将项目导入 mule studio 后,我在父标签附近的 pom.xml 文件中出现以下错误。

Project build error: Non-resolvable parent POM:
        Could not transfer artifact
        org.mule.tools.devkit:mule-devkit-parent:pom:3.4.3 from/to
        mulesoft-releases (http://repository.mulesoft.org/releases/):
        connection timed out to
        http://repository.mulesoft.org/releases/org/mule/tools/devkit/mule-devkit-parent/3.4.3/mule-devkit-parent-3.4.3.pom
        and 'parent.relativePath' points at wrong local POM.

这是我的pom.xml 文件。

<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>org.hello</groupId>
    <artifactId>hello-connector</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>mule-module</packaging>
    <name>Hello Connector</name>

    <parent>
        <groupId>org.mule.tools.devkit</groupId>
        <artifactId>mule-devkit-parent</artifactId>
        <version>3.4.3</version>
    </parent>

    <properties>
        <junit.version>4.9</junit.version>
        <mockito.version>1.8.2</mockito.version>
        <jdk.version>1.7</jdk.version>
        <category>Community</category>
        <licensePath>LICENSE.md</licensePath>
        <devkit.studio.package.skip>false</devkit.studio.package.skip>
    </properties>

    <scm>
        <connection>scm:git:git://github.com:mulesoft/hello-connector.git</connection>
        <developerConnection>scm:git:git@github.com:mulesoft/hello-connector.git</developerConnection>
        <url>http://github.com/mulesoft/hello-connector</url>
    </scm>

    <repositories>
        <repository>
            <id>mulesoft-releases</id>
            <name>MuleSoft Releases Repository</name>
            <url>http://repository.mulesoft.org/releases/</url>
            <layout>default</layout>
        </repository>
        <repository>
            <id>mulesoft-snapshots</id>
            <name>MuleSoft Snapshots Repository</name>
            <url>http://repository.mulesoft.org/snapshots/</url>
            <layout>default</layout>
        </repository>
    </repositories>

</project>

我已将 jdk 版本更改为 1.7。在自动生成的 pom 中是 1.6。 忽略标题中的任何错误,一些格式问题。 我尝试了此处提到的各种解决方案,但无法解决问题。

【问题讨论】:

  • 我可以毫无问题地获得repository.mulesoft.org/nexus/content/repositories/releases/org/…。你可以从浏览器访问它吗?实际消息中的错误文本中的 url 中有空格还是复制粘贴问题?在 (mule/_tools)
  • 是的,我可以从浏览器访问该链接。 url 中的空格是复制粘贴问题。 mule-devkit-parent-3.4.3 存在于我的本地存储库中。这个问题有什么临时解决办法吗?
  • 我认为,作为临时修复,您可能希望下载父项目的源代码,将其添加到您的工作区并在 ... 中设置路径

标签: maven mule pom.xml mule-studio parent-pom


【解决方案1】:

您的计算机和互联网之间可能存在防火墙。您要么必须配置 Java 才能使用此代理。

或者您必须手动下载父 POM 并自己将其安装到本地 m2 存储库中。看看这个问题怎么做:How to manually install an artifact in Maven 2?

由于你只需要安装一个POM,你需要欺骗mvn install:install-file

mvn install:install-file -Dfile=<path-to-pomfile> -Dpackaging=pom -DpomFile=<path-to-pomfile>

这个命令只会安装 POM 本身。

【讨论】:

  • 父 pom 正在下载到我的本地 m2 存储库。我项目的自动生成的 pom.xml 文件在 标记中显示错误。我应该使用您提到的命令中哪个 pom 文件的路径?我尝试在 m2 repo 中使用父 pom 的路径,但它导致构建失败。
  • 由于错误Could not transfer artifact,您的 m2 存储库中应该没有有效的父 POM。您能否检查两次 Maven 实际从 http://repository.mulesoft.org/releases/ 下载的 org.mule.tools.devkit:mule-devkit-parent:pom:3.4.3?文件内容是否正确?校验和是否匹配?
  • 我有一个名为“mule-devkit-parent-3.4.3”的文件,位于路径“C:\Users\sh265993\.m2\repository\org\mule\tools\devkit\ mule-devkit-parent\3.4.3"。它的文件扩展名为 .pom 。我检查了它的内容,它们对我来说似乎是正确的。
  • 那么元数据已经过时了。将 C:\Users\sh265993\.m2\repository\org\mule\tools\devkit\mule-devkit-parent 移动到其他地方并再次运行 Maven。
  • 我清除了 .m2 存储库并从头开始。错误得到解决。但是现在我无法在我的 mule 工作室中安装生成的 UpdateSite.zip 文件,如教程中所示。我添加了路径“Hello-Connector - file:/D:/Mule/Examples/abc/hello-connector/target/UpdateSite.zip”,但它给出了错误,它可以找到该路径
猜你喜欢
  • 2011-11-28
  • 2022-01-07
  • 2019-04-04
  • 1970-01-01
  • 1970-01-01
  • 2019-12-13
  • 1970-01-01
  • 1970-01-01
  • 2021-11-16
相关资源
最近更新 更多