maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Brian Topping (JIRA)" <j...@codehaus.org>
Subject [jira] Commented: (MNG-1323) Plugin extensions (dependencies) not resolved in reactor build
Date Wed, 04 Jul 2007 07:49:13 GMT

    [ http://jira.codehaus.org/browse/MNG-1323?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_101223
] 

Brian Topping commented on MNG-1323:
------------------------------------

John's comment in http://jira.codehaus.org/browse/MNG-1323#action_50268 is correct, that "this
is undoubtedly caused by Maven not disposing of plugin containers between project builds".
 DefaultPluginManager.ensurePluginContainerIsComplete() specifically skips plugin instantiation
on the first line if it's already been initialized.

This is a huge problem in a build that I am working on.  Using a setup like:

root/pom.xml, modules: a, b
       a/pom.xml: define antrun, with antrun target that generates an ant Task
       b/pom.xml: define antrun, with <dependencies> section that includes the task
built with a

There's no way to use the Task built in a if the container that built a is not disposed and
reloaded with the new dependencies of b (which includes a).

This whole thing of using antrun is suboptimal, but it needs to be supported.  The project
that I'm currently porting uses XDoclet 1 very heavily, along with a forked version of Castor
and some Texen tasks for a forked version of Torque.  The only way to reliably bring this
across is to clean it up after things are stabilized, with 60+ projects at last count, there's
just too much risk to try to create plugins before the build is operational.

JOHN:  have you tried to solve this before and run into problems?  This issue is coming up
on two years old and has over 20 watchers.  I'd like to help, but from previous experience,
I'd like to get as much information as I can about what the solution is up against.  It's
an obvious performance violation to blindly dispose the container with every execution (there
should probably be some kind of dependency signature comparison before disposing the container),
but since this happens per-build rather than within a build, the impact should be minimal.
 

Discuss! 

> Plugin extensions (dependencies) not resolved in reactor build
> --------------------------------------------------------------
>
>                 Key: MNG-1323
>                 URL: http://jira.codehaus.org/browse/MNG-1323
>             Project: Maven 2
>          Issue Type: Bug
>          Components: Plugins and Lifecycle
>    Affects Versions: 2.0
>            Reporter: Kenney Westerhof
>             Fix For: 2.0.x
>
>         Attachments: MNG-1323-core-integration-tests.diff
>
>
> I've added a dependency on an Ant Task in project/build/plugins/plugin[artifactId='maven-antrun-plugin']/dependencies/
and run that anttask using the antrun plugin.
> When run from the project dir itself it runs fine.
> When running from the root of the project tree (reactor build, project one level below
root),
> antrun bails out because the taskdef can't be found (not on classpath).
> It looks like the dependency isn't resolved, or not added to the plugins' classrealm.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message