【问题标题】:Maven pom errorMaven pom错误
【发布时间】:2011-11-29 02:35:55
【问题描述】:

我有参加过的春季核心培训课程的示例项目。他们确实在他们的机器上工作,但不是在我的机器上工作。我不是真正的 maven 专家,但是里面的 .pom 文件给出了这个错误。我真的很感激任何类似猴子的指示,我会先做然后理解。非常感谢您提前。我只想运行它们并再次运行。

项目构建错误:不可解析的父 POM:无法从 https://tbits.springsource.com/repository/snapshot 传输 com.springsource.training.common:abstractWebProject:pom:1.1.7.RELEASE 已缓存在本地存储库中,直到重新尝试解析com.springsource.training.snapshot 的更新间隔已过或强制更新。

原始错误:无法将工件 com.springsource.training.common:abstractWebProject:pom:1.1.7.RELEASE 从/到 com.springsource.training.snapshot (https://tbits.springsource.com/repository/快照):ConnectException 和 'parent.relativePath' 指向错误的本地 POM pom.xml /mvc-1-solution line 1 Maven Problem

另外,我因缺少库而犯了许多错误: 描述资源路径位置类型

Project 'mvc-1-solution' is missing required library: 'C:\Users\Blabla\.m2\repository\org\cloudfoundry\cloudfoundry-runtime\0.6.0-BUILD-SNAPSHOT\cloudfoundry-runtime-0.6.0-BUILD-SNAPSHOT.jar' mvc-1-solution      Build path  Build Path Problem
Project 'mvc-1-solution' is missing required library: 'C:\Users\Blabla\.m2\repository\org\hibernate\hibernate-annotations\3.5.3-Final\hibernate-annotations-3.5.3-Final.jar'    mvc-1-solution      Build path  Build Path Problem
Project 'mvc-1-solution' is missing required library: 'C:\Users\Blabla\.m2\repository\org\hibernate\hibernate-core\3.5.3-Final\hibernate-core-3.5.3-Final.jar'  mvc-1-solution      Build path  Build Path Problem

还有更多类似的。

他们的 .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 http://maven.apache.org/maven-v4_0_0.xsd">

<modelVersion>4.0.0</modelVersion>
<groupId>com.springsource.training.module</groupId>
<artifactId>mvc-1-solution</artifactId>
<packaging>war</packaging>
<version>3.2.1.RELEASE</version>
<parent>
    <groupId>com.springsource.training.common</groupId>
    <artifactId>abstractWebProject</artifactId>
    <version>1.1.7.RELEASE</version>
</parent>
<repositories>
    <repository>
        <id>com.springsource.training.snapshot</id>
        <name>SpringSource Training Repository - Snapshots</name>
        <url>https://tbits.springsource.com/repository/snapshot</url>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </repository>
    <repository>
        <id>com.springsource.training.release</id>
        <name>SpringSource Training Repository - Releases</name>
        <url>https://tbits.springsource.com/repository/release</url>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
    </repository>
    <repository>
        <id>org.springframework.maven.milestone</id>
        <name>Spring Maven Milestone Repository</name>
        <url>http://maven.springframework.org/milestone</url>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
    </repository>
    <repository>
        <id>springsource-snapshot</id>
        <url>http://s3.amazonaws.com/private.maven.springsource.com/snapshot/</url>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </repository>
</repositories>
<dependencies>
    <!-- DBCP -->
    <dependency>
        <groupId>commons-dbcp</groupId>
        <artifactId>commons-dbcp</artifactId>
        <version>1.3</version>
        <exclusions>
            <exclusion>
                <groupId>commons-logging</groupId>
                <artifactId>commons-logging</artifactId>
            </exclusion>
            <exclusion>
                <groupId>commons-pool</groupId>
                <artifactId>commons-pool</artifactId>
            </exclusion>
            <exclusion>
                <groupId>xerces</groupId>
                <artifactId>xerces</artifactId>
            </exclusion>
            <exclusion>
                <groupId>xerces</groupId>
                <artifactId>xercesImpl</artifactId>
            </exclusion>
            <exclusion>
                <groupId>xml-apis</groupId>
                <artifactId>xml-apis</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>commons-pool</groupId>
        <artifactId>commons-pool</artifactId>
        <version>1.5.4</version>
        <exclusions>
            <exclusion>
                <groupId>commons-logging</groupId>
                <artifactId>commons-logging</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <!-- CloudFoundry -->
    <dependency>
        <groupId>org.cloudfoundry</groupId>
        <artifactId>cloudfoundry-runtime</artifactId>
        <version>0.6.0-BUILD-SNAPSHOT</version>
    </dependency>
</dependencies>
</project>

【问题讨论】:

  • 我不相信这些存储库以公开可用的方式存在。尝试访问 S3 存储库也会返回访问错误。
  • 谢谢,我想我必须以某种方式处理它。我重写.pom,不是很有经验,但你永远不知道,直到你尝试。在 STS 中,如何在不真正进入 pom 的情况下解决丢失的库?
  • 什么是 STS?而且您很少需要添加 每个 依赖项,而 Maven 为您 所做的 - 处理传递性。
  • 基于 Eclipse 的 Spring Tool Suite。我想我必须通过教程或搜索一些知识。你们都是通过命令行配置maven的,有没有办法在Eclipse中按下“一些神奇的按钮”,这样一切都会自动添加:)?
  • 它怎么知道“一切”是什么?依赖项取决于您项目的需求。

标签: spring maven dependencies projects


【解决方案1】:

“在 com.springsource.training.snapshot 的更新间隔过去或强制更新之前,不会重新尝试解析。” --这是由于尝试下载工件的第一次失败,需要从您的存储库中删除那些 *.lastUpdated。

对于窗户:

cd %userprofile%.m2\repository for /r %i in (*.lastUpdated) do del %i

【讨论】:

    【解决方案2】:

    不是解决方案,而是如何解决它的秘诀:

    • 检查您在 Maven POM 中定义的每个存储库。对我来说,这 2 个 springsource 存储库目前不可用。
    • 我认为abstractWebProject 将包含在其中的一些中。因此错误Project build error: Non-resolvable parent POM: Failure to transfer 将是由此产生的结果。
    • 在您可以访问父 POM 后,您应该检查所有依赖项是否都可以解析。
    • 如果一切都失败了,请与培训团队联系。如果您参加了该培训,他们会尽力帮助您。然后,您应该准备好以下信息:
      • 您要使用的 POM(如您的问题所示)
      • 您的 Maven 安装中的文件 settings.xml
      • 您的 Maven 安装版本
      • 用户目录.m2 中的文件settings.xml(取决于不同位置的操作系统)。

    希望您能得到解决问题所需的帮助。

    【讨论】:

      猜你喜欢
      • 2012-04-04
      • 2015-12-21
      • 1970-01-01
      • 1970-01-01
      • 2021-08-02
      • 1970-01-01
      • 2019-11-25
      • 2020-10-12
      • 2014-11-30
      相关资源
      最近更新 更多