Details
-
Type:
Bug
-
Status:
Closed
-
Priority:
Critical
-
Resolution: Duplicate
-
Affects Version/s: None
-
Fix Version/s: None
-
Component/s: None
-
Labels:None
Description
My project uses picocontainer 1.1 and andromda maven plugin uses picocontainer 1.0. In pluginīs project.xml thereīs a pico 1.0 depedencie declaration, but as in my project thereīs a pico 1.1 declaration so I cant run it.
Okay, Iīve looked plugin code and I found:
<j:new var="pluginUtils" className="org.andromda.maven.MavenPluginUtils"/> that uses pico 1.0 and I tried to find a way to set itīs context classpath, but I could not find it (Someway like ant).
Iīve looked at project.xml and wrote "<properties><classloader>root</classloader></properties>" at pico 1.0 depedency.
It goes perfectly... well, not so perfectly because if I run another plugin that needs pico 1.1 (like xdoclet 2.0 will soon) I got problem because when I finish to run a plugin classpath configuration does not come back to normal.
In my opinion if I write plugins depedencies should overwrite project depedencies when a plugin is running and just when its running.
I wrote a example, there is two jars on this zip, one of them is my andromda cartridge and the andromda plugin with classloader fixed.
test1 - Just run andromda plugin
test2 - Run andromda plugin and other code that uses pico 1.1.
test3 - Run a code that uses pico 1.1 and andromda plugin.
Thankīs
Issue Links
- duplicates
-
MAVEN-1690
maven 1.1 beta 2 confuses class loaders while compiling plugin-genererated code
-
test1 - Just run andromda plugin
test2 - Run andromda plugin and other code that uses pico 1.1.
test3 - Run a code that uses pico 1.1 and andromda plugin.