You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Marcono1234 (Jira)" <ji...@apache.org> on 2022/07/18 13:29:00 UTC

[jira] [Comment Edited] (MNG-7373) Maven should not attempt to download the jar when pom

    [ https://issues.apache.org/jira/browse/MNG-7373?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17567995#comment-17567995 ] 

Marcono1234 edited comment on MNG-7373 at 7/18/22 1:28 PM:
-----------------------------------------------------------

[~michael-o], sorry for my delayed response and for "hijacking" this issue. For me the main problem was that the relocation guide seems to be incomplete and outdated (as you have mentioned as well), but I am not sure if that was the underlying issue here for [~TheSnoozer] too.

For me the main problems with the guide are:
- It contains the notice "2020 rework in progress", but the linked mailing list thread seems to stop in 2020, which is rather irritating and makes it unclear what the current status is
- It is for Maven 2 (MNGSITE-200)
- It directly starts with an example, but does not actually explain how relocation works, for example that the new coordinates should point to an existing artifact and how it integrates with dependency resolution in Maven
- While the examples at the bottom are useful, they are also a bit irritating because Apache POI published a relocation POM with jars, which might not actually be the best practice and makes it unclear what the "correct" approach is

However, if you want I can create a separate MNGSITE issue for this. A while ago I helped writing a section in the Gradle documentation about [Maven artifact relocation|https://docs.gradle.org/current/userguide/publishing_maven.html#publishing_maven:relocation], based on how I understood this feature (any feedback regarding potential errors is appreciated). Maybe some parts of it could also be included in the Maven guide?


was (Author: marcono1234):
[~michael-o], sorry for my delayed response and for "hijacking" this issue. For me the main problem was that the relocation guide seems to be incomplete and outdated (as you have mentioned as well), but I am not sure if that was the underlying issue here for [~TheSnoozer] too.

For me the main problems with the guide are:
- It contains the notice "2020 rework in progress", but the linked mailing list thread seems to stop in 2020, which is rather irritating and makes it unclear what the current status is
- It is for Maven 2 (MNGSITE-200)
- It directly starts with an example, but does not actually explain how relocation works, for example that the new coordinates should point to an existing artifact and how it integrates with dependency resolution Maven
- While the examples at the bottom are useful, they are also a bit irritating because Apache POI published a relocation POM with jars, which might not actually be the best practice and makes it unclear what the "correct" approach is

However, if you want I can create a separate MNGSITE issue for this. A while ago I helped writing a section in the Gradle documentation about [Maven artifact relocation|https://docs.gradle.org/current/userguide/publishing_maven.html#publishing_maven:relocation], based on how I understood this feature (any feedback regarding potential errors is appreciated). Maybe some parts of it could also be included in the Maven guide?

> Maven should not attempt to download the jar when <packaging>pom</packaging>
> ----------------------------------------------------------------------------
>
>                 Key: MNG-7373
>                 URL: https://issues.apache.org/jira/browse/MNG-7373
>             Project: Maven
>          Issue Type: Improvement
>            Reporter: S L
>            Priority: Major
>             Fix For: waiting-for-feedback, wontfix-candidate
>
>
> Hello,
> maybe a corner case of what exactly should be part of a "relocation pom" ([https://maven.apache.org/guides/mini/guide-relocation.html]), but I created a release just consisting of the relocation-info ([https://repo1.maven.org/maven2/pl/project13/maven/git-commit-id-plugin/4.9.9/git-commit-id-plugin-4.9.9.pom]) as type `<packaging>pom</packaging>` (since I only wanted to publish the relocation information).
> Using this depdendency.e.g. via:
> {code}
> <build>
>   <plugins>
>     <plugin>
>       <groupId>pl.project13.maven</groupId>
>       <artifactId>git-commit-id-plugin</artifactId>
>       <version>4.9.9</version>
>     </plugin>
>   </plugins>
> </build>
> {code}
> yields in the incorrect attempt of downloading a JAR-File from the new repository location:
> {code}
> [INFO] Building Git Commit Id Plugin Maven Mojo Debugging 0.0.3-SNAPSHOT  [1/3]
> [INFO] --------------------------------[ pom ]---------------------------------
> Downloading from central-secure: https://repo.maven.apache.org/maven2/io/github/git-commit-id/git-commit-id-maven-plugin/4.9.9/git-commit-id-maven-plugin-4.9.9.pom
> [WARNING] The POM for io.github.git-commit-id:git-commit-id-maven-plugin:jar:4.9.9 is missing, no dependency information available
> Downloading from central-secure: https://repo.maven.apache.org/maven2/io/github/git-commit-id/git-commit-id-maven-plugin/4.9.9/git-commit-id-maven-plugin-4.9.9.jar
> [INFO] ------------------------------------------------------------------------
> [INFO] Reactor Summary for Git Commit Id Plugin Maven Mojo Debugging 0.0.3-SNAPSHOT:
> [INFO] 
> [INFO] Git Commit Id Plugin Maven Mojo Debugging .......... FAILURE [  0.850 s]
> [INFO] submodule-one ...................................... SKIPPED
> [INFO] submodule-two ...................................... SKIPPED
> [INFO] ------------------------------------------------------------------------
> [INFO] BUILD FAILURE
> [INFO] ------------------------------------------------------------------------
> [INFO] Total time:  1.000 s
> [INFO] Finished at: 2021-07-12T21:42:15+02:00
> [INFO] ------------------------------------------------------------------------
> [ERROR] Plugin pl.project13.maven:git-commit-id-plugin:4.9.9 or one of its dependencies could not be resolved: Could not find artifact io.github.git-commit-id:git-commit-id-maven-plugin:jar:4.9.9 in central-secure (https://repo.maven.apache.org/maven2) -> [Help 1]
>  {code}
> IMHO Maven should not even try to search for a jar when `<packaging>pom</packaging>`. Simply raise an error that the package was relocated. the new location is at least detected, since it tries to download the artifact from a new location.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)