Hi,
I was looking at applying the patch for this one, but wasn't happy
with it and looked for a better solution, which I'm also not happy
with :)
Basically, in the reactor target/classes is always used as the
classpath for projects referring to dependencies inside the reactor
because of the way it is set in MavenProject. I think it would be
worth us reversing the logic in MavenProject (if the artifact file is
not null, use that, if it is, use the active project) - any thoughts
why that would be a bad idea?
As for shade, to make it work in the reactor, there's 3 options:
- unpack the final JAR into the classesDirectory (the original patch)
- replace the outputDirectory with the JAR (cleaner and more concise,
but effectively makes the output directory read-only from the package
phase, might have unexpected side effects if someone modifies the
output afterwards, though that would seem unwise anyway)
- don't fix it, require people to use <shadedArtifactAttached>true</
shadedArtifactAttached> instead and depend on the one with the
classifier.
Opinions?
Cheers,
Brett
--
Brett Porter
[email protected]
http://blogs.exist.com/bporter/