web-dev-qa-db-fra.com

Maven: POM parent non résolvable et 'parent.relativePath' pointe vers un POM local erroné

J'utilise maven 3 pour exécuter l'application, mais l'erreur suivante s'affiche:

[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: Failure to find com.topdesk:tis-parent:pom:3.
4 in https://repo.maven.Apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced and 'parent.relativePath' points at wrong local POM @ line 3, column 11
at org.Apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.Java:416)
at org.Apache.maven.DefaultMaven.collectProjects(DefaultMaven.Java:663)
    at org.Apache.maven.DefaultMaven.getProjectsForMavenReactor(DefaultMaven.Java:654)
    at org.Apache.maven.DefaultMaven.doExecute(DefaultMaven.Java:243)
    at org.Apache.maven.DefaultMaven.execute(DefaultMaven.Java:154)
    at org.Apache.maven.cli.MavenCli.execute(MavenCli.Java:582)
    at org.Apache.maven.cli.MavenCli.doMain(MavenCli.Java:214)
    at org.Apache.maven.cli.MavenCli.main(MavenCli.Java:158)
    at Sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at Sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.Java:62)
    at Sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:43)
    at Java.lang.reflect.Method.invoke(Method.Java:497)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.Java:289)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.Java:229)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.Java:415)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.Java:356)
[ERROR]
[ERROR]   The project com.topdesk.test.junitcategorizer:junitcategorizer:0.0.1-SNAPSHOT (D:\Masters\thesis related papers and tools\junitcategorizer\pom.xml) has 1 error
[ERROR]     Non-resolvable parent POM: Failure to find com.topdesk:tis-parent:pom:3.4 in https://repo.maven.Apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced and 'parent.relativePath' points at wrong local POM@ line 3, column 11 -> [Help 2]org.Apache.maven.model.resolution.UnresolvableModelException: Failure to find com.topdesk:tis-parent:pom:3.4 in https://repo.maven.Apache.org/maven2 was cachedin the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced
    at org.Apache.maven.project.ProjectModelResolver.resolveModel(ProjectModelResolver.Java:187)
    at org.Apache.maven.project.ProjectModelResolver.resolveModel(ProjectModelResolver.Java:236)
    at org.Apache.maven.model.building.DefaultModelBuilder.readParentExternally(DefaultodelBuilder.Java:898)
    at org.Apache.maven.model.building.DefaultModelBuilder.readParent(DefaultModelBuilder.Java:750)
    at org.Apache.maven.model.building.DefaultModelBuilder.build(DefaultModelBuilder.Java:309)
    at org.Apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.Java:463)
    at org.Apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.Java:432)
    at org.Apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.Java:396)
    at org.Apache.maven.DefaultMaven.collectProjects(DefaultMaven.Java:663)
    at org.Apache.maven.DefaultMaven.getProjectsForMavenReactor(DefaultMaven.Java:654)
    at org.Apache.maven.DefaultMaven.doExecute(DefaultMaven.Java:243)
    at org.Apache.maven.DefaultMaven.execute(DefaultMaven.Java:154)
    at org.Apache.maven.cli.MavenCli.execute(MavenCli.Java:582)
    at org.Apache.maven.cli.MavenCli.doMain(MavenCli.Java:214)
    at org.Apache.maven.cli.MavenCli.main(MavenCli.Java:158)
    at Sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at Sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.Java:62)
    at Sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:43)
    at Java.lang.reflect.Method.invoke(Method.Java:497)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.Java:289)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.Java:229)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.Java:415)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.Java:356)
Caused by: org.Eclipse.aether.resolution.ArtifactResolutionException: Failure to find com.topdesk:tis-parent:pom:3.4 in https://repo.maven.Apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced
    at org.Eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.Java:459)
    at org.Eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.Java:262)
    at org.Eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifact(DefaultArtifactResolver.Java:239)
    at org.Eclipse.aether.internal.impl.DefaultRepositorySystem.resolveArtifact(DefaultRepositorySystem.Java:295)
    at org.Apache.maven.project.ProjectModelResolver.resolveModel(ProjectModelResolver.Java:183)
    ... 22 more
Caused by: org.Eclipse.aether.transfer.ArtifactNotFoundException: Failure to find com.topdesk:tis-parent:pom:3.4 in https://repo.maven.Apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced
    at org.Eclipse.aether.internal.impl.DefaultUpdateCheckManager.newException(DefaultUpdateCheckManager.Java:232)
    at org.Eclipse.aether.internal.impl.DefaultUpdateCheckManager.checkArtifact(DefaultUpdateCheckManager.Java:206)
    at org.Eclipse.aether.internal.impl.DefaultArtifactResolver.gatherDownloads(DefaultArtifactResolver.Java:599)
    at org.Eclipse.aether.internal.impl.DefaultArtifactResolver.performDownloads(DefaultArtifactResolver.Java:518)
    at org.Eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.Java:436)
    ... 26 more

J'ai le fichier pom parent suivant (une partie):

<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.topdesk</groupId>
<artifactId>tis-parent</artifactId>
<version>3.4</version>
</parent>

<groupId>com.topdesk.test.junitcategorizer</groupId>
<artifactId>junitcategorizer</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>
<name>JUnitCategorizer</name>

<modules>
<module>junitcategorizer.instrument</module>
<module>junitcategorizer.examples</module>
<module>junitcategorizer.reporter.maven</module>
<module>junitcategorizer.reporter.maven.site</module>
<module>junitcategorizer.cutdetection</module>
</modules>
<organization>
    <name>TOP Informatie Systemen bv</name>
    <url>http://www.topdesk.com/</url>
</organization>

<properties>
    <project.build.sourceEncoding>utf-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>utf-8</project.reporting.outputEncoding>
    <surefire.version>2.12</surefire.version>
</properties>

<prerequisites>
    <maven>3.0</maven>
</prerequisites>

J'ai le fichier pom du module enfant suivant:

 <modelVersion>4.0.0</modelVersion>
 <parent>
<artifactId>junitcategorizer</artifactId>
<groupId>com.topdesk.test.junitcategorizer</groupId>
<version>0.0.1-SNAPSHOT</version>
<relativePath>..</relativePath>
</parent>
<artifactId>junitcategorizer.cutdetection</artifactId>
<name>Analysis of parameters for the CUT detection algorithm</name>
<description>Analysis of parameters for the CUT detection algorithm</description>
<dependencies>
<dependency>
    <groupId>com.topdesk.test.junitcategorizer</groupId>
    <artifactId>junitcategorizer.instrument</artifactId>
    <version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
</project>

J'ai essayé de commenter la partie ci-dessous dans le fichier pom parent (je ne sais pas s'il est correct de le faire), alors cette erreur a disparu et la construction échoue avec this error.

<parent>
<groupId>com.topdesk</groupId>
<artifactId>tis-parent</artifactId>
<version>3.4</version>
</parent>

Aidez-moi, s'il vous plaît!

Merci

13
Srinu

La disposition normale pour un projet multi-modules maven est la suivante:

parent
├── pom.xml
├── module
    ├── pom.xml

Vérifiez que vous utilisez cette disposition.

Aditionellement:

  1. la relativePath semble étrange. Au lieu de '..' 

    <relativePath>..</relativePath>
    

    essayez '../' à la place:

    <relativePath>../</relativePath>
    

    Vous pouvez également supprimer relativePath si vous utilisez la disposition standard. C’est ce que je fais toujours, et sur la ligne de commande, je peux aussi bien construire le parent (et tous les modules) ou un seul module.

  2. Le chemin du module est peut-être incorrect. Dans le parent, vous définissez le module comme suit:

    <module>junitcategorizer.cutdetection</module>
    

    Vous devez spécifier le nom du dossier du module enfant et non un identifiant d'artefact. Si junitcategorizer.cutdetection n'est pas le nom du dossier, changez-le en conséquence. 

J'espère que cela pourra aider..

EDITjetez un coup d’œil à l’autre billet, j’ai répondu.

Vous pouvez essayer de la manière suivante,

 <parent>
    <groupId></groupId>
    <artifactId></artifactId>
    <version></version>
  </parent>

Pour que le fichier jar parent soit extrait du référentiel.

3
Baskar Felix

Donc, dans mon cas, après avoir essayé toutes les options ci-dessus, j'ai compris qu'il s'agissait d'un VPN (pare-feu de la société). Le problème est résolu .. Etape 1: vérifiez que maven est configuré correctement ou non . Etape 2: vérifiez que settings.xml est mappé correctement ou non. Etape 4: Exécuter l’installation propre spring-boot: Exécuter Etape 5: le problème est résolu.

1
Venugopal

Il y avait un conflit dans la version Java. Résolu après avoir utilisé 1.8 pour maven.

1
VIKAS. BHAT