[fedora-java] Java Packages Tools 2.0.0 released

Mikolaj Izdebski mizdebsk at redhat.com
Thu Jul 18 13:39:44 UTC 2013

A new major version (2.0.0) of Java Packages Tools (javapackages) has
just been released.  Java Packages Tools is a collection of all kind
tools, script and macros to support packaging Java.

Starting from version 2.0.0 Java Packages Tools includes functionality
of JPackage Utilities (jpackage-utils) that is useful for Fedora.  This
will allow jpackage-utils package to be obsoleted and provided by
javapackages-tools (see below for more detailed explanation).

%add_maven_depmap macro now injects pom.properties to every JAR file it
processes.  This will allow XMVn Subst to be used to replace any JAR
files that are in system Maven repository, not only those built with
Maven.  It will allow xmvn-subst to be effectively used to replace
bundled JARs with symlinks after package built, which will allow
simplification of packages containing complex symlinking in %install
sections (for example jboss-as) as well as many Eclipse plugins.

%add_to_maven_depmap and %update_maven_depmap macros were removed.
These macros have been obsolete for long time.  Their usage was
preventing Fedora from implementing some features related to Maven
metadata.  Packages using these macros will have to be ported to use
%add_maven_depmap or they will fail to build.

maven2jpp-mapdeps.xsl template has been removed.  This template wasn't
been used.  XMvn has its own way of mapping dependencies.  To best of my
knowledge nothing in Fedora used this template.

Macros related to installation of icons and desktop files were removed.
 These legacy macros were out of scope of Java Packages Tools --
standard Fedora macros should be used instead.

14 new manual pages were added.  These manpages document RPM macros
(such ad %pom_* macros) and commands related to packaging Java.  More
manual pages are planned in future.

Documentation specific to JPackage and irrelevant to fedora was removed.
 Most notably this requires Jpackage policy -- in Fedora packaging
guidelines should be followed instead.

Reasons for merging jpackage-utils into javapackages-tools

In Fedora jpackage-utils was based on old version (year 2006) coming
from JPackage.  It included a number of fedora-specific patches which
weren't accepted by upstream.  Java Packages Tools was a project founded
by Fedora developers to maintain Fedora-specific macros and various
helper scripts.  The most important reasons for merging them follow:

1) These two packages had the same purpose and were strong components --
jpackage-utils required javapackages-tools and vice versa.

2) jpackage-utils contained some legacy code which was preventing Fedora
from implementing new features.  This code couldn't be removed because
heavy diversion from upstream is discouraged.

3) jpackage-utils didn't have update to new upstream version for 7 years
-- it was de-facto maintained by Fedora developers.  Removing custom
patchsets from our packages allows for better separation of upstream
code from RPM packaging and simplifies overall maintenance.

The new Java Package Tools haven't yet been built for rawhide, but I am
going to do this today. The new jpackage-utils is going to obsolete and
provide jpackage-utils.

Mikolaj Izdebski
Software Engineer, Red Hat
IRC: mizdebsk

More information about the java-devel mailing list