Ok you convinced me, but I have one last point to debate.

2010/6/29 Nathan Bubna <[email protected]>:
> On Tue, Jun 29, 2010 at 8:04 AM, Antonio Petrelli
> <[email protected]> wrote:
>> With Maven I can create different modules, so dependencies are not
>> optional, but you have to select the correct module you want.
>
> No.  Users should not have to select a different build of Velocity for
> different logging purposes.  That's totally overkill.  If Maven can't
> understand dependencies that are
> required-for-compilation-but-optional-at-runtime, then it will never
> work as our build tool.

I think I did not explain well. I would like to create some more modules:
velocity-engine-log4j
velocity-engine-servlet
etc.
These modules depend on velocity-engine, but contain the
implementation of LogChute depending on the log framework they want to
use.
If we still want to build an "uberjar" containing all the modules in
one jar, we can do it easily with a plugin (though it is considered
bad practice by Maven purists [like me :-D]). OTOH, if you use Maven,
adding a dependency is better since your dependency hierarchy is
clear.

>> And with Maven adding a dependency is really easy, don't think as you
>> are working with Ant.
>
> It is debatable whether that is a useful feature. :)

Yes it is! I think it is the best feature of Maven and you can control
them easily with various plugins (dependency report, going offline to
download dependencies in one shot, checking new versions).
The problem is keeping modules with the minimal amount of optional
packages, because they cause various problems with transitive
dependencies.

Antonio

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to