【问题标题】:Non-resolvable parent POM exception thrown while running maven project运行 maven 项目时抛出不可解析的父 POM 异常
【发布时间】:2018-10-24 12:05:43
【问题描述】:

我是 Jenkins 插件开发的新手,正在尝试使用 maven 项目创建 Jenkins 插件,并使用 eclipse 作为 IDE。

以下是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/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.jenkins-ci.plugins</groupId>
        <artifactId>plugin</artifactId>
        <version>3.4</version>
        <relativePath />
    </parent>
    <groupId>io.jenkins.plugins</groupId>
    <artifactId>JenkinPluginDev</artifactId>
    <version>1.0</version>
    <packaging>hpi</packaging>
    <properties>
        <jenkins.version>2.7.3</jenkins.version>
        <java.level>7</java.level>
    </properties>
    <name>TODO Plugin</name>
    <description>TODO</description>
    <licenses>
        <license>
            <name>MIT License</name>
            <url>https://opensource.org/licenses/MIT</url>
        </license>
    </licenses>
    <!-- Assuming you want to host on @jenkinsci:
    <url>https://wiki.jenkins.io/display/JENKINS/TODO+Plugin</url>
    <scm>
        <connection>scm:git:git://github.com/jenkinsci/${project.artifactId}-plugin.git</connection>
        <developerConnection>scm:git:git@github.com:jenkinsci/${project.artifactId}-plugin.git</developerConnection>
        <url>https://github.com/jenkinsci/${project.artifactId}-plugin</url>
    </scm>
    -->
    <repositories>
        <repository>
            <id>repo.jenkins-ci.org</id>
            <url>https://repo.jenkins-ci.org/public/</url>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>repo.jenkins-ci.org</id>
            <url>https://repo.jenkins-ci.org/public/</url>
        </pluginRepository>
    </pluginRepositories>
</project>

maven 项目在“父”标签附近的 POM.xml 文件中有一些错误。

我尝试运行 maven 目标来解决问题,但它未能构建并在控制台中观察到以下错误消息。

下载: https://repo.jenkins-ci.org/public/org/jenkins-ci/plugins/plugin/3.4/plugin-3.4.pom [错误] 构建无法读取 1 个项目 -> [帮助 1] [错误]

[错误] 项目 io.jenkins.plugins:JenkinPluginDev:1.0

(C:\jenkinPluginDevelopment\JenkinPluginDev\pom.xml) 有 1 个错误

[错误] 不可解析的父 POM:无法传输工件 org.jenkins-ci.plugins:plugin:pom:3.4 从/到 repo.jenkins-ci.org (https://repo.jenkins-ci.org/public/): 对等体未通过身份验证并且 'parent.relativePath' 指向没有本地 POM @ 第 4 行,第 13 列 -> [帮助2]

[ERROR] [ERROR] 要查看错误的完整堆栈跟踪, 使用 -e 开关重新运行 Maven。

[错误] 使用 -X 重新运行 Maven 开关以启用完整的调试日志记录。

[ERROR] [ERROR] 有关错误和可能的解决方案的更多信息,>请阅读以下文章:

[错误] [帮助 1] http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildingException [错误] [帮助 2] http://cwiki.apache.org/confluence/display/MAVEN/UnresolvableModelException

任何线索...

【问题讨论】:

    标签: java eclipse maven jenkins


    【解决方案1】:

    这个项目是否依赖于另一个父项目?

    错误parent.relativePath' points at no local POM @ line 4, column 13表示你没有父pom xml。

    你能发布你的文件夹结构吗?

    【讨论】:

    • OP 明确使用非本地 pom 因为&lt;relativePath /&gt;。这个 pom 来自 Jenkins 的工件服务器,不是 OPs 项目的一部分。
    【解决方案2】:

    真正的问题是 repo.jenkins-ci.org 提供的 SSL 证书不在您受信任的 ca 数据库中(对等方未经过身份验证)。

    您可以手动更新您的 JRE ca 密钥库或安装 CA 证书(使用 keytool)。 您的本地时钟也有可能离得太远,因此证书验证失败(即使密钥库中存在 CA 证书)。尝试使用 -e 重新运行 maven,这将产生更详细的错误。

    最后一个选项(不推荐)是在禁用 SSL 检查的情况下运行 maven(详细信息可以在 here 找到)

    【讨论】:

      【解决方案3】:

      我现在正在开发一个 jenkins 插件。

      一开始我也遇到了同样的问题:制作一个干净正确的pom.xml

      在查看了几十个github官方jenkins插件库后,我能够创建一个非常好的starter pom.xml:

      这是我当前的 pom,它运行良好(java 8、eclipse、maven、linux 等)

      https://gist.github.com/jrichardsz/e5d7b67475f1625f4487740708af285d

      另外,您可以查看这个官方 pugin github 存储库,以搜索 poms:

      【讨论】:

        猜你喜欢
        • 2021-11-16
        • 2022-11-24
        • 2023-03-05
        • 2011-11-28
        • 1970-01-01
        • 2013-11-14
        • 2020-04-18
        • 2019-03-31
        相关资源
        最近更新 更多