迁移到Mavent 3.0.3后,几个项目中的父poms无法再解析.
Projects以默认方式构建,因此我将parent.relativePath设置为"../pom.xml"
superpom (located in repository)
|-rootpom (located locally: no error)
|-|-parentpom (located locally: error resolving parent)
|-|-|-module1 (located locally: error resolving parent)
|-|-|-module2 (located locally: error resolving parent)
|-|-|-module3 (located locally: error resolving parent)
|-|-|-module4 (located locally: error resolving parent)
Run Code Online (Sandbox Code Playgroud)
错误...
myArtifactId:用于为myGroup不可分辨父POM 1.0:未能找到为myGroup:myParentArtifactId:1.0 http://myRepo.net/archiva/repository/maven2在本地仓库被缓存,resollution不会重新尝试,直到更新间隔maven2已经过去或强制更新,'parent.relativePath'指向错误的本地POM @ myGroup:myParentArtifactId:1.0,C:\ myProjectDir\parent\pom.xml,第x行,第y列 - > [帮助2]
...似乎表明在存储库中搜索了pom,所以我想知道为什么在看到其他地方之前找不到pom.
我已经读过,当在settings.xml中定义了几个存储库时,maven3可能会感到困惑,但这总是在搜索存储库内的pom而不是本地时.
更新
到目前为止,我们确实在父项目级别(parentpom)上执行了maven构建 - 我不知道这个事实很重要,因为maven2到目前为止已成功完成.
使用maven3时,这似乎很重要.在根项目级别(rootpom)上执行maven3时,构建成功完成.所以我的问题就解决了.
由于我不一定想回答我自己的问题,也许有人可以解释为什么maven3现在这样做或为什么旧方法是错误的.
我最近研究了Gorilla Logic的开源测试工具,需要进行一些更改才能将某些内容记录到控制台.我已经检查了"Android代理"的源代码控制代码,现在我正在构建一个新的.jar代理文件.我需要使用它
mvn clean install
来构建.jar文件.当我尝试构建它时,命令行会发出此错误
Non-resolvable parent POM: Could not find artifact com.gorillalogic.monkeytalk:monkeytalk:pom:1.0.12-SNAPSHOT and 'parent.relativePath' points at wrong local POM @ line 6, column 10 -> [Help 2]
任何人都可以帮我这个或让我知道这意味着什么?谢谢.:)我不明白maven,只想知道它意味着什么.
这是pom.xml文件行6-10
<parent>
<groupId>com.gorillalogic.monkeytalk</groupId>
<artifactId>monkeytalk</artifactId>
<version>1.0.12-SNAPSHOT</version>
<relativePath>/Users/henry/Desktop/monkeytalk-agent-android/parent/pom.xml</relativePath>
</parent>
Run Code Online (Sandbox Code Playgroud)