Multi-module build and plugin classpath issue
Hi, I am committer for the Castor (http://www.castor.org) project, and I am experiencing 'behaviour' I somehow find hard to understand. We at castor have a multi-module setup, where some of the modules have the maven plugin for Castor configured to generate java code from XML schema. So far, so fine. It now and then happens that we'd like to override the default dependency for the Maven plugin for Castor in one module only (to e.g. integrate some new functionality of the code generator). Whenever we do this (i.e. add a dependency in the plugin configuration of one module only) and execute a 'mvn install' in the project directory, we can see that the new dependency is being picked up but for all modules that use the Maven plugin for Castor - which is not what we want. Questions: Is this expected behaviour ? Or are we missing something in e.g. the plugin configuration to have the isolation we'd like to see ? If I have failed to make myself understandable, let me know Regards Werner - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Multi-module build and plugin classpath issue
As far as I understand, currently in Maven there is not isolation between plugins in different projects. If you have a multi-module build, the first use of a plugin in that multi-module build will determine both the version and the dependencies that are loaded into it's classloader for all subsequent plugin invokations during the reactor build. I'm not sure if this is what you wanted to hear, but it is what it is :-( -Stephen 2008/10/2 Werner Guttmann [EMAIL PROTECTED] Hi, I am committer for the Castor (http://www.castor.org) project, and I am experiencing 'behaviour' I somehow find hard to understand. We at castor have a multi-module setup, where some of the modules have the maven plugin for Castor configured to generate java code from XML schema. So far, so fine. It now and then happens that we'd like to override the default dependency for the Maven plugin for Castor in one module only (to e.g. integrate some new functionality of the code generator). Whenever we do this (i.e. add a dependency in the plugin configuration of one module only) and execute a 'mvn install' in the project directory, we can see that the new dependency is being picked up but for all modules that use the Maven plugin for Castor - which is not what we want. Questions: Is this expected behaviour ? Or are we missing something in e.g. the plugin configuration to have the isolation we'd like to see ? If I have failed to make myself understandable, let me know Regards Werner - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Multi-module build and plugin classpath issue
Thanks, Stephen, for confirming what we have already been assuming, based upon our builds. And no, I would have very much liked to see a different answer. Let me just ask a few follow-ups: a) Is this by design, or ... b) Is this a current limitation of the reactor ? c) Could this be overcome (in theory, at least), and d) What would it take to see this changed ? Thanks for your time Werner Stephen Connolly wrote: As far as I understand, currently in Maven there is not isolation between plugins in different projects. If you have a multi-module build, the first use of a plugin in that multi-module build will determine both the version and the dependencies that are loaded into it's classloader for all subsequent plugin invokations during the reactor build. I'm not sure if this is what you wanted to hear, but it is what it is :-( -Stephen 2008/10/2 Werner Guttmann [EMAIL PROTECTED] Hi, I am committer for the Castor (http://www.castor.org) project, and I am experiencing 'behaviour' I somehow find hard to understand. We at castor have a multi-module setup, where some of the modules have the maven plugin for Castor configured to generate java code from XML schema. So far, so fine. It now and then happens that we'd like to override the default dependency for the Maven plugin for Castor in one module only (to e.g. integrate some new functionality of the code generator). Whenever we do this (i.e. add a dependency in the plugin configuration of one module only) and execute a 'mvn install' in the project directory, we can see that the new dependency is being picked up but for all modules that use the Maven plugin for Castor - which is not what we want. Questions: Is this expected behaviour ? Or are we missing something in e.g. the plugin configuration to have the isolation we'd like to see ? If I have failed to make myself understandable, let me know Regards Werner - 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]
Re: Multi-module build and plugin classpath issue
my understanding is b and it's being worked on 2008/10/2 Werner Guttmann [EMAIL PROTECTED]: Thanks, Stephen, for confirming what we have already been assuming, based upon our builds. And no, I would have very much liked to see a different answer. Let me just ask a few follow-ups: a) Is this by design, or ... b) Is this a current limitation of the reactor ? c) Could this be overcome (in theory, at least), and d) What would it take to see this changed ? Thanks for your time Werner Stephen Connolly wrote: As far as I understand, currently in Maven there is not isolation between plugins in different projects. If you have a multi-module build, the first use of a plugin in that multi-module build will determine both the version and the dependencies that are loaded into it's classloader for all subsequent plugin invokations during the reactor build. I'm not sure if this is what you wanted to hear, but it is what it is :-( -Stephen 2008/10/2 Werner Guttmann [EMAIL PROTECTED] Hi, I am committer for the Castor (http://www.castor.org) project, and I am experiencing 'behaviour' I somehow find hard to understand. We at castor have a multi-module setup, where some of the modules have the maven plugin for Castor configured to generate java code from XML schema. So far, so fine. It now and then happens that we'd like to override the default dependency for the Maven plugin for Castor in one module only (to e.g. integrate some new functionality of the code generator). Whenever we do this (i.e. add a dependency in the plugin configuration of one module only) and execute a 'mvn install' in the project directory, we can see that the new dependency is being picked up but for all modules that use the Maven plugin for Castor - which is not what we want. Questions: Is this expected behaviour ? Or are we missing something in e.g. the plugin configuration to have the isolation we'd like to see ? If I have failed to make myself understandable, let me know Regards Werner - 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]