Rob,

Thanks for pushing this along.

On 24/01/13 11:36, Rob Vesse wrote:
Per previous discussions for 2.10.0 release I have been experimenting
with maven a little and propose the following new maven module:

jena–libs

The naming is hard because we then have such a commitment to it.

At one time delivery artifacts were suggested to be apache-jena* and jena-* development units. (Fuseki could/should become several modules and have a delivery of apache-jena-fuseki.)

We already have apache-jena the download.

Version 1:
apache-jena         -- download
apache-jena-libs    -- maven integration artifact

Version 2:
apache-jena-system -- download
apache-jena        -- maven integration artifact

Version 3:
apache-jena        -- download
jena-libs          -- maven integration artifact

I don't have a strong opinion; version 1 seems a little better (today).


This is a POM only module which serves as a convenience artifact,
specifying this artifact would pull in the standard Jena libraries –
Core, IRI, ARQ, TDB and SDB

Not SDB - we don't do a coordinated release of SDB with the Core, IRI, ARQ, TDB set so it can be out-of-step with the rest.

Does this address what we are trying to do?  If so I can go ahead and
commit this so we can play around with this.

+1 -- go for it


Rob

ps.  I also wonder whether it might be worth adding the following
though I am less keen on this:

jena–libs-onejar

This is a JAR module which again serves as a convenience artifact,
this would use the maven shade plugin to build a single uber jar from
the jena-libs module.  The intention is to provide a convenience
binary for those who don't use dependency management systems like
maven.  They can download and add a single JAR to the class path and
not have to worry about ensuring they have the right dependencies.

This may be nice to have but I don't know whether we should encourage
this, having uber JARs can also cause problems since it can hide the
fact that you have multiple versions of a dependency on your class
path from easy inspection.

For people using maven, the common artifact is the important thing.

For people using the download, the non-jena jars also need to be included. Including them in the uber jar is asking for confusion (use the fuseki jar!), otherwise a set of jars has to be included anyway so rolling up jena is only a small step.

So I don't see this as critical.

A command jar might be worth thinking about - have a apache-jena-cmds which the command line tools packages to be used on their own.

Reply via email to