[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: mh_make and Maven <prerequisites><maven>3.2



Le 27/01/2015 13:01, Stian Soiland-Reyes a écrit :
> Thanks for the help. Agreed that as long as Maven plugins are up to
> date it should generally work with Maven 2.x. One of the things that
> is not upgraded I believe is the Maven reactor (which figures out the
> build order) - and we have had trouble with this in the past in
> earlier Maven versions. (NPE!)

You can give it a try. So far I haven't seen a project that couldn't be
built with Maven 2. Most of the time Maven 3 is only used by some
reporting plugins that aren't needed in the Debian context.


> How should I best put in such a patch for the pom.xml under debian/?
> I'm afraid it's ten years ago since I last tried to make a Debian
> package by hand..

The patches go in debian/patches. You can create them with quilt. The
workflow looks like this:

quilt new 01-maven2-compatibility.patch
quilt add pom.xml
nano pom.xml -> remove the prereq
quilt refresh


> Well, I'm getting doubtful as to the possibility to get it included in
> Debian proper, as it seems to be quite a large job to also package all
> the dependencies in newer versions in Debian (as we need them all to
> be OSGi bundles), something like jdeb and our own Debian repository at
> apache.org is probably an easier workaround.  Would jdeb still install
> into /usr/share/maven-repo ?

If you build a non official package you don't need to install the Maven
artifacts under /usr/share/maven-repo. This repository is only used to
build other packages. Debian needs that local repository because the
Maven artifacts can't be downloaded from Maven Central at build time,
but for a non official packages you don't have this constraint.


> We have previously used Install4j which makes a crude single-deb [1]
> that goes into /opt/taverna*, and I was hoping we could do something
> slightly more Debian like and go into /usr/share/maven-repo and
> friends, and at least have a debian/ control files and .deb packages
> for each of our upstream repositories.

What really matters I think is to integrate well with the system for
things like manpages, desktop icons, logs, bash completion and init
daemon. The location of the files is not very important and /opt/taverna
is fine.

Emmanuel Bourg


Reply to: