On Mon, 21 Jun 2004, Eric Pugh <[EMAIL PROTECTED]> wrote: > I don't know what extent you want to push back on the projects that > gump builds, but it seems to me that they are either doing something > that pushes maven beyond it's limits,
Quite possible. Or maybe not. AFAIU we are successfully replacing all artifacts declared in the POM with Gump built artifacts already - using jar overrides. This probably is enough as long as the projects we build are not trying to defeat Gump. When we build a project with Ant, Gump sets the magic build.sysclasspath property to "only". This means that each and every <classpath> inside the build file will be ignored - which includes the nested elements of the <junit> task for example. If something we build with Ant runs tests, this means we have to add the directory that will contain the compiled tests to the Gump descriptor (using <work>) explicitly since the <junit> task won't find the classes otherwise. Gump adds it to the system CLASSPATH that way. While trying to fix the commons-compress build I noticed that the <work> entry didn't point anywhere but the test:test goal still managed to find the classes - so the goal uses a Maven provided classloader to load the classes which contains more than the stuff declared in the Gump descriptor. This means there is a way to add stuff to the classpath without giving control to Gump. This "hole" could be used to defeat Gump's purpose. If this whole can only be exploited consciously, I don't see any problem with it. Projects that want to cheat on Gump should do so. I'm concerned that a project may compile against some dated version unconsciously, though. For Maven plugins that are based on Ant tasks, we may get the same effect as with Ant builds if we set the build.sysclasspath property as a system property. I'm not sure how Maven uses the Ant tasks, but it may make them see the property and work as if they'd be running inside of Ant. Stefan --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
