maven-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alexandre Poitras" <>
Subject Re: [RANT] This Maven thing is killing us....
Date Tue, 04 Jul 2006 15:12:46 GMT
I think having a transitive dependency repository is good. Of course,
you depend upon the community good willing but it is the same
principle for a wiki. Quality will increase if more and more people
participate. I think the Maven Evangelisation guide should be more
visible on the Maven web site because right now there aren't a lot of
people who know how to submit a correction.

On 7/4/06, Steve Loughran <> wrote:
> Jesse Kuhnert wrote:
> > Please, let's not go overboard....Ant is nice like c is nice when you need
> > to get small things done. If you have to maintain very large projects with
> > varying releases/users/etc maven is a much better choice. Even with its
> > current flaws. =p
> I'm not arguing with that, its the transitive dependency thing I'm
> commenting on.
> when you write a project, your goal is to get it compile, to create
> whatever artifacts you create. If you include too many things in your
> dependency list (like commons-logging instead of commons-logging-api),
> your stuff still build happily, it just has excessive dependencies, as
> now it thinks logkit comes in. The people consuming your jar either
> propagate the problem, or have to do stuff like :
>        <dependency groupID="commons-lang"
>            artifactID="commons-lang"
>            version="${commons-lang.version}">
>          <exclusion
>              groupId="junit"
>              artifactId="junit"/>
>        </dependency>
>        <dependency groupID="commons-logging"
>            artifactID="commons-logging"
>            version="${commons-logging.version}">
>          <exclusion
>              groupId="junit"
>              artifactId="junit"/>
>          <exclusion
>              groupId="logkit"
>              artifactId="logkit"/>
>          <exclusion
>              groupId="avalon-framework"
>              artifactId="avalon-framework"/>
>        </dependency>
> That's the issue. With transitive dependencies, you inherit any error
> made by anything you depend on. And while you can upgrade versions at
> the touch of a file, you have to recheck the dependencies whenver you
> upgrade, or junk creeps in.
> Now, I think its really nice to know what something was built with; its
> a wonderful hint as to what you should be using, but its nothing more. A
> hint. Something to be looked at, and, in the case of the example above,
> then pretty much discarded.
> -Steve
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message