Hi Russel - The use case is simple - I've written a plug-in which takes in as input a list of dependencies, just like any other plugin or the pom itself. So, given a String representation of an artifact, how do I resolve the artifact so I end up with a local File object I can load?
This API has seemed like total voodoo - I want to write a paper that demystifies how to write plugins for maven3. I think I need to find some time to sit with each of the principle author of maven3 and publish what I learn. -Richard -----Original Message----- From: Russell Gold [mailto:[email protected]] Sent: Sunday, July 21, 2013 7:52 AM To: Maven Users List Subject: Re: API to resolve an artifact in Maven3 Hi Richard, Can you be more specific? What exactly is your goal? - Russ On Jul 20, 2013, at 11:02 PM, Richard Sand <[email protected]> wrote: > Can someone please share the secret of how to do dependency resolution > in Maven3? And specifically in 3.1? > > -Richard > > -----Original Message----- > From: Richard Sand [mailto:[email protected]] > Sent: Friday, July 19, 2013 3:45 PM > To: 'Maven Users List' > Subject: RE: API to resolve an artifact in Maven3 > > +1 Anthony. The question is what is the preferred 3.x way of doing it, > +not > how to do it the old way. Unless the official answer is "do it the old > way because..." > > > -----Original Message----- > From: Anthony Dahanne [mailto:[email protected]] > Sent: Friday, July 19, 2013 2:32 PM > To: Maven Users List > Subject: Re: API to resolve an artifact in Maven3 > > hello, I 'm slightly confused about your answer Igor. > The other day I was wondering about how to keep a maven plugin doing > artifact resolution compatible with both maven 3.0 and 3.1 and Robert > answered me to use the maven dependency tree api : > http://stackoverflow.com/questions/17685441/can-a-maven-mojo-relying-o > n-aeth > er-be-compatible-with-maven-3-0-x-and-3-1-x#comment25769765_17686482 > > Now I am using something like that : > Artifact enforceArtifact = > defaultArtifactFactory.createArtifact(enforceGroupId,enforceArtifactId > ,enfor > ceVersion,"",enforceType); > MavenProject enforcePom = > mavenProjectBuilder.buildFromRepository( > enforceArtifact, remoteRepositories, localRepository); > DependencyNode rootNode = > dependencyGraphBuilder.buildDependencyGraph(enforcePom, new > CumulativeScopeArtifactFilter(Arrays.asList(Artifact.SCOPE_COMPILE, > Artifact.SCOPE_RUNTIME))); > > and that works pretty well (I used to think relying on aether directly > was the best approach, until this change of package made my plugins > not maven > 3.1 compatible) > > Which approach would you consider the best then (when writing a plugin > doing dependency resolution) , using the Maven 2 API with maven-compat > or relying on maven-dependency-tree ? > Thanks for your answer ! > Anthony > > > > > > > On Fri, Jul 19, 2013 at 1:44 PM, <[email protected]> wrote: > >> Please check next post >> >> http://mail-archives.apache.org/mod_mbox/maven-users/201307.mbox/%3c7 >> A [email protected]%3e >> It should helps you >> >> On Jul 19, 2013, at 9:39 PM, "Richard Sand" <[email protected]> wrote: >> >>> Quick Q- what's the proper way to resolve an artifact in a Maven3 >> plug-in, e.g. where the artifact isn't already a managed dependency >> in the project. >>> >>> I found the Mojo Developer Cookbook ( >> http://docs.codehaus.org/display/MAVENUSER/Mojo+Developer+Cookbook) >> but it gives the Maven2 technique, and the classes used are deprecated. >>> >>> -Richard >>> >>> >>> >>> -------------------------------------------------------------------- >>> - To unsubscribe, e-mail: [email protected] >>> For additional commands, e-mail: [email protected] >>> >> > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > ----------------- Come read my webnovel, Take a Lemon <http://www.takealemon.com>, and listen to the Misfile radio play <http://www.gold-family.us/audio/misfile.html>! --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
