2012-10-17 14 views
9

Ich bin neu zu Maven.Nicht-auflösbare Eltern POM für Konnte Artefakt und 'parent.relativePath' Punkte bei falschen lokalen POM nicht finden

Ich habe ein Projekt, das ich mit dem maven3 zu bauen versuche.

Wenn ich den Befehl mvn -X clean install ausführen, habe ich den Fehler.

[[email protected]]# mvn -X clean install 
Apache Maven 3.0.4 (r1232337; 2012-01-17 14:14:56+0530) 
Maven home: /usr/local/maven 
Java version: 1.6.0_24, vendor: Sun Microsystems Inc. 
Java home: /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre 
Default locale: en_US, platform encoding: UTF-8 
OS name: "linux", version: "2.6.32-279.9.1.el6.x86_64", arch: "amd64", family: "unix" 
[INFO] Error stacktraces are turned on. 
[DEBUG] Reading global settings from /usr/local/maven/conf/settings.xml 
[DEBUG] Reading user settings from /root/.m2/settings.xml 
[DEBUG] Using local repository at /root/.m2/repository 
[DEBUG] Using manager EnhancedLocalRepositoryManager with priority 10 for /root/.m2/repository 
[INFO] Scanning for projects... 
[DEBUG] Could not find metadata com.test.ctrl:ctrl-build:0.0.17-SNAPSHOT/maven-metadata.xml in local (/root/.m2/repository) 
[ERROR] The build could not read 1 project -> [Help 1] 
org.apache.maven.project.ProjectBuildingException: Some problems were encountered while processing the POMs: 
[FATAL] Non-resolvable parent POM for org.openstack:openstack-rhel-rpms:2012.1-SNAPSHOT: Could not find artifact com.test.ctrl:ctrl-build:pom:0.0.17-SNAPSHOT and 'parent.relativePath' points at wrong local POM @ org.openstack:openstack-rhel-rpms:2012.1-SNAPSHOT, /root/test/devenv/openstack-rhel/pom.xml, line 8, column 13 

     at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:363) 
     at org.apache.maven.DefaultMaven.collectProjects(DefaultMaven.java:636) 
     at org.apache.maven.DefaultMaven.getProjectsForMavenReactor(DefaultMaven.java:585) 
     at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:234) 
     at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) 
     at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) 
     at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) 
     at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
     at java.lang.reflect.Method.invoke(Method.java:616) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) 
[ERROR] 
[ERROR] The project org.openstack:my-tar:2012.1-SNAPSHOT (/root/test/devenv/mytar/pom.xml) has 1 error 
[ERROR]  Non-resolvable parent POM for org.openstack:openstack-rhel-rpms:2012.1-SNAPSHOT: Could not find artifact com.test.ctrl:ctrl-build:pom:0.0.17-SNAPSHOT and 'parent.relativePath' points at wrong local POM @ org.openstack:openstack-rhel-rpms:2012.1-SNAPSHOT, /root/test/devenv/openstack-rhel/pom.xml, line 8, column 13 -> [Help 2] 
org.apache.maven.model.resolution.UnresolvableModelException: Could not find artifact com.test.ctrl:ctrl-build:pom:0.0.17-SNAPSHOT 
     at org.apache.maven.project.ProjectModelResolver.resolveModel(ProjectModelResolver.java:159) 
     at org.apache.maven.model.building.DefaultModelBuilder.readParentExternally(DefaultModelBuilder.java:813) 
     at org.apache.maven.model.building.DefaultModelBuilder.readParent(DefaultModelBuilder.java:664) 
     at org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:310) 
     at org.apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.java:232) 
     at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:410) 
     at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:379) 
     at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:343) 
     at org.apache.maven.DefaultMaven.collectProjects(DefaultMaven.java:636) 
     at org.apache.maven.DefaultMaven.getProjectsForMavenReactor(DefaultMaven.java:585) 
     at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:234) 
     at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) 
     at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) 
     at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) 
     at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
     at java.lang.reflect.Method.invoke(Method.java:616) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) 
Caused by: org.sonatype.aether.resolution.ArtifactResolutionException: Could not find artifact com.test.ctrl:ctrl-build:pom:0.0.17-SNAPSHOT 
     at org.sonatype.aether.impl.internal.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:538) 
     at org.sonatype.aether.impl.internal.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:216) 
     at org.sonatype.aether.impl.internal.DefaultArtifactResolver.resolveArtifact(DefaultArtifactResolver.java:193) 
     at org.sonatype.aether.impl.internal.DefaultRepositorySystem.resolveArtifact(DefaultRepositorySystem.java:286) 
     at org.apache.maven.project.ProjectModelResolver.resolveModel(ProjectModelResolver.java:155) 
     ... 22 more 
Caused by: org.sonatype.aether.transfer.ArtifactNotFoundException: Could not find artifact com.test.ctrl:ctrl-build:pom:0.0.17-SNAPSHOT 
     at org.sonatype.aether.impl.internal.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:528) 
     ... 26 more 
[ERROR] 
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles: 
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildingException 
[ERROR] [Help 2] http://cwiki.apache.org/confluence/display/MAVEN/UnresolvableModelException 

Ich überprüfe die pom.xml aber kann nicht verstehen, was das Problem war. Einige Zeilen von meinem pom.xml ist wie folgt.

1 <?xml version="1.0"?> 
    2 <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" 
    3  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
    4 <modelVersion>4.0.0</modelVersion> 
    5 
    6 <parent> 
    7  <groupId>org.openstack</groupId> 
    8  <artifactId>openstack-rhel-rpms</artifactId> 
    9  <version>2012.1-SNAPSHOT</version> 
10  <relativePath>../openstack-rhel</relativePath> 
11 </parent> 
12 
13  <groupId>org.openstack</groupId> 
14  <artifactId>my-tar</artifactId> 
15  <version>2012.1-SNAPSHOT</version> 
16 <packaging>pom</packaging> 
17 <name>my tar</name> 
18 

Ich überprüfe auch die Lösung auf einige Frage in Stackoverflow wie Non-resolvable parent POM: Could not find artifact aber könnte nicht helfen, das Problem zu lösen.

Wenn Sie weitere Informationen zu dieser Frage benötigen, lassen Sie es mich wissen.

Antwort

6

Sie benötigen die Datei die folgenden Elemente /root/test/devenv/openstack-rhel/pom.xml

Diese Datei muss müssen haben:

<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.openstack</groupId> 
    <artifactId>openstack-rhel-rpms</artifactId> 
    <version>2012.1-SNAPSHOT</version> 
    <packaging>pom</packaging> 
</project> 
8

ich vor dem gleichen Problem. Das Festlegen des relativen Pfads des übergeordneten Elements in Modulprojekten löste das Problem.

Verwenden <relativePath>../Parent Project Name/pom.xml</relativePath>

1

Wir hatten das gleiche Problem. Die Eltern-Pom-Datei war in unserem lokalen Repository verfügbar, aber maven versuchte immer noch erfolglos, sie vom zentralen Repository herunterzuladen, oder vom relativen Pfad (im relativen Pfad waren keine Dateien vorhanden).

Es stellte sich heraus, dass im lokalen Repository eine Datei namens "_remote.repositories" war, die dieses Verhalten verursachte. Nachdem wir alle Dateien mit diesem Namen aus dem kompletten lokalen Repository gelöscht haben, konnten wir unsere Module erstellen.

Verwandte Themen