Maarten Storm-2 wrote:
> 
> Hello all,
> I would like to add programmatically dependencies to the MavenProject.
> I have looked in the mail archives but I could not find info on this
> topic.Is there a possible solution for this?
> Kind regards,
> Maarten Storm
> 
Hello,

I'm also interested by this and I found this example:
http://www.eclipse.org/articles/article.php?file=Article-Eclipse-and-Maven2/index.html

However, when I do it, I get a NullPointerException later on with this code:
currentArtifact = artifactFactory.createBuildArtifact(                          
                
currentDependency.getGroupId(),  currentDependency.getArtifactId(), 
currentDependency.getVersion(), currentDependency.getType() );
                                                        
// Add the jar to the dependency list.
getProject().getDependencies().add(currentDependency);
                                                        
// Get the artifact from the remote repository if it is not available
locally. 
artifactResolver.resolve(currentArtifact,
getProject().getRemoteArtifactRepositories(), localRepository);

=> 
[ERROR] FATAL ERROR
[INFO]
------------------------------------------------------------------------
[INFO] null
[INFO]
------------------------------------------------------------------------
[INFO] Trace
java.lang.NullPointerException
        at
org.apache.maven.project.artifact.MavenMetadataSource.createArtifacts(MavenMetadataSource.java:327)
        at
org.apache.maven.project.MavenProject.createArtifacts(MavenProject.java:1577)
        at
org.apache.maven.plugin.DefaultPluginManager.resolveTransitiveDependencies(DefaultPluginManager.java:1409)
        at
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:405)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:558)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:499)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:478)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:330)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:291)
        at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:287)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
        at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
        at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
        at org.codehaus.classworlds.Launcher.main(Launcher.java:375)

BTW, some things are undocumented, like how to get access to artifactFactory
or artifactResolver - I had to Google this page up to be able to write that
code: http://docs.codehaus.org/display/MAVENUSER/Mojo+Developer+Cookbook

Thanks for any tips.

Regards,
Costin.
-- 
View this message in context: 
http://www.nabble.com/Programmatically-adding-dependencies-to-a-MavenProject-tp21173440p21664740.html
Sent from the Maven Developers mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to