accumulo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christopher <ctubb...@apache.org>
Subject "Provided" dependencies
Date Wed, 06 Nov 2013 22:05:54 GMT
What's the latest opinion whether things should be marked "provided" in the pom?
I've changed my mind on this a few times, myself, so I'm curious what
others think.

The provided scope means that it will not propagate as a transitive
dependency. Other than that, it doesn't do much... though we can
control packaging based on provided or not.

I'm not sure this gets us much, and it's inconvenient for users. We
can control packaging in other ways (like being more explicit and
carefully considering which dependencies we include in an RPM or
tarball, for instance).

If we drop its declaration, what this means, is that if users want to
build with Accumulo as a dependency, but against a different version
of Hadoop than what we declare in our POM, they'll have to explicitly
<exclude> the hadoop dependencies, and redeclare them, or they will
have to use their <dependencyManagement> section to force a particular
dependency of hadoop.

The advantage to users, though, if we drop this, is that they won't
have to constantly re-declare transitive dependencies to get their
projects to build/test/run.

See http://s.apache.org/maven-dependency-scopes

Thoughts?

--
Christopher L Tubbs II
http://gravatar.com/ctubbsii

Mime
View raw message