GitHub user achim86 opened a pull request:

    https://github.com/apache/karaf/pull/52

    Update Mojos to resolve artifacts via Aether

    According to my Question on the [Mailing 
List](http://karaf.922171.n3.nabble.com/Question-about-artifact-resolving-in-karaf-maven-plugin-td4036242.html)
 I updated the remaining goals to use Aether resolution.
    
    I have two remarks on the changes. 
    
    1. In general there were two ways how artifacts could be resolved. Either 
via the provided project repositories (default case) or via a repository which 
is dedicated to the artifact (if not null). The currently provided interface 
for resolving artifacts via Aether 
(`org.apache.karaf.tooling.features.DependencyHelper`) does not provide any way 
to edit the repositories which are used to resolve artifacts. The resolver 
always takes the project repositories which are defined as read only. First I 
thought the right way would be to extend the interface to take a List of 
repositories to resolve artifacts against. This would allow me to pass the 
artifact's repository to the resolver. When trying to test my changes I did not 
find any use case when such an artifact repository is used instead of the 
project repositories. In the [git 
history](http://svn.apache.org/viewvc?view=revision&revision=826783) I found 
that this functionality was introduced in 2009 when the Plugin was part of 
Felix. B
 undle URI must have looked like `<repo>!<dependency>`. I am not sure whether 
this is relevant any longer. I first made the decision to take back the changes 
from the interface and remove the functionality to resolve artifacts using 
their dedicated repository.
    2. I insufficiently tested Goal 
[features-validate-descriptor](http://karaf.apache.org/manual/latest/developers-guide/karaf-maven-plugin-features-validate-descriptor.html)
 as linked features can not be resolved. This is a major problem as Karaf 
Standard and Enterprise features are added to the validation by default (the 
same applies for 4.0.0.M1).

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/achim86/karaf master

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/karaf/pull/52.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #52
    
----
commit daef6dce7396c36800ce4d4e38e6ab74c69b0a8f
Author: Achim Finke <[email protected]>
Date:   2014-11-05T13:06:58Z

    Use Aether (DependencyHelper Interface) to resolve Maven artifacts instead 
of Maven Resolver.

commit 3f607686189c82306035ccbbd589c9bd17a31b81
Author: Achim Finke <[email protected]>
Date:   2014-11-05T20:23:30Z

    Added artifact specific repository support.

commit b8dbc9bc55ce0db059ad59fc740666c25da2de45
Author: Achim Finke <[email protected]>
Date:   2014-11-06T11:30:31Z

    Improved artifact specific repository support.

commit 412a475ba02c85cd482e415eb887c3dd69a8e05b
Author: Achim Finke <[email protected]>
Date:   2014-11-06T12:28:42Z

    Removed artifact specific repository support.

commit 174b951aeb09f36df5e84f9a348297c62443a18f
Author: Achim Finke <[email protected]>
Date:   2014-11-06T14:40:38Z

    Cleaned up.

commit 8d4a35593caf66353880e7f6c152180dd91e8d51
Author: Achim Finke <[email protected]>
Date:   2014-11-06T14:42:56Z

    Cleaned up.

commit c003629191111b9cf6fe3ed905d2e87f1874b526
Author: Achim Finke <[email protected]>
Date:   2014-11-06T14:45:08Z

    Cleaned up.

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to