Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [m2e-users] Dependencies and bundles question

On 12-08-03 7:34 AM, Jens v.P. wrote:

I tried to use the Maven Indexer (in conjunction with Aether) separately
from the m2e project. Actually, since there is no official Eclipse
Aether release available yet, I only used m2e bundles including the
"old" Sonatype Aether version and the indexer bundles. When analyzing
the me2 bundles, I found some things not clear to me:

In m2e.maven.runtime, a lot of 3rd party libraries (such as Sonatype
Aether) are included. Same is true for the me2.maven.indexer and
m2e.archetype.indexer bundles. On the one hand, some of these libraries
are already present in the Eclipse Orbit, such as org.apache.commons.cli
(and other apache commons libraries), or lucene. On the other hand, some
libraries are missing to make these bundles self-contained. These
missing libraries are async-http-client-1.6.5, netty-3.2.5, and
slf4j-api-1.6.4. Actually, these libraries can also be found in the
Orbit, albeit slf4j-api-1.6.4 is only contained in the latest Orbit
version (R20120526062928). Did I miss something, like a me2 bundle
containing these missing libraries, or is there a reason for this
different 3rd party library management?

I am not sure I understand the question.

We resolve m2e dependencies from maven repositories during the build, so
Orbit is not really relevant or useful for us.

We had a usecase when we needed to be able to use different netty and
async-client versions, so we moved those to separate bundles.

slf4j and logback are such common libraries that it did not make sense
to bundle them with m2e.

Everything else we just packaged to fewer bundles possible.

If you think different dependency granularity would make better sense or
allow integration scenarios not currently possible, please open a
enhancement request in bugzilla and we'll see what we can do.

Also, I found that some maven indexer classes contained in
indexer-core-3.1.0.jar, which is bundled in m2e.maven.indexer, are also
contained in the very same bundle directly (that is, unarchived in
folder org/apache/maven/indexer). From a quick glance it seems as if
these class files are identical to the one contained in
indexer-corre-3.1.0. Is there a reason for duplicating them?

Not identical, we had to patch some of the classes in order to avoid
getting new dependency versions through eclipse legal clearance. I
believe there is only one such class in 1.1, do source-level diff to see
what's changed.


Back to the top