You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Tamás Cservenák (Jira)" <ji...@apache.org> on 2022/07/11 12:51:00 UTC

[jira] [Comment Edited] (MINSTALL-126) localRepositoryPath for install like for install-file

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

Tamás Cservenák edited comment on MINSTALL-126 at 7/11/22 12:50 PM:
--------------------------------------------------------------------

Am torn here... this "watch" thing (if am right, it relies on [this|https://github.com/apache/karaf/blob/main/bundle/core/src/main/java/org/apache/karaf/bundle/core/internal/BundleWatcherImpl.java#L209] and especially on [Parser|https://github.com/apache/karaf/blob/b21ac87194dd9820e20eb1cf16539f8a7d4f4ff6/util/src/main/java/org/apache/karaf/util/maven/Parser.java#L422] and these are "naive" implementations of maven repo.

In other words, while in maven2 times the local and remote repositories were pretty much similar (you could produce non-timestamped versions), this was intentionally changed in Maven3. So, "assuming" you take GAV and turn it into path may not be true anymore, especially as Maven3.9+ and above will introduce ["split repository"|https://maven.apache.org/resolver/local-repository.html#split-local-repository] and other nice things.

So, to me this for sure is not "install" (local repository involved), but you cannot support "deploy" to remote repository (due timestamped snapshot, Parser does not use maven metadata to figure out timestamped version), hence, this (to me) yields more like https://maven.apache.org/plugins/maven-stage-plugin/copy-mojo.html or alike, but here again "remote vs remote" repository is in play. So maybe a 3rd plugin that is dedicated (and uses same layout as Parser supports) is the proper solution, as Parser does not implements "local"  nor "remote" repository in Maven3 sense. Is merely a hack.

In short, your own mojo that implements same layout as is supported by Parser is the way to go.



was (Author: cstamas):
Am torn here... this "watch" thing (if am right, it relies on [this|https://github.com/apache/karaf/blob/main/bundle/core/src/main/java/org/apache/karaf/bundle/core/internal/BundleWatcherImpl.java#L209] and especially on [Parser|https://github.com/apache/karaf/blob/b21ac87194dd9820e20eb1cf16539f8a7d4f4ff6/util/src/main/java/org/apache/karaf/util/maven/Parser.java#L422] and these are "naive" implementations of maven repo.

In other words, while in maven2 times the local and remote repositories were pretty much similar (you could produce non-timestamped versions), this was intentionally changed in Maven3. So, "assuming" you take GAV and turn it into path may not be true anymore, especially as Maven3.9+ and above will introduce ["split repository"|https://maven.apache.org/resolver/local-repository.html#split-local-repository] and other nice things.

So, to me this for sure is not "install" (local repository involved), but you cannot support "deploy" to remote repository (due timestamped snapshot, Parser does not use maven metadata to figure out timestamped version), hence, this (to me) yields more like https://maven.apache.org/plugins/maven-stage-plugin/copy-mojo.html or alike, but here again "remote vs remote" repository is in play. So maybe a 3rd plugin that is dedicated (and uses same layout as Parser supports) is the proper solution, as Parser does not implements "local"  nor "remote" repository in Maven3 sense. Is merely a hack.



> localRepositoryPath for install like for install-file
> -----------------------------------------------------
>
>                 Key: MINSTALL-126
>                 URL: https://issues.apache.org/jira/browse/MINSTALL-126
>             Project: Maven Install Plugin
>          Issue Type: Improvement
>            Reporter: Michael Vorburger
>            Priority: Major
>             Fix For: 3.0.0
>
>
> I believe there are real world use cases where to have a localRepositoryPath available for maven-install-plugin's install goal like it currently is for the install-file goal would be useful.
> http://blog2.vorburger.ch/2016/06/maven-install-into-additional.html is a Blog post I wrote with some background about why this would be useful.



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