Hi everyone,
We have a new packaging draft available[1] on Fedora wiki. These changes
are not final, just a proposal and I'd welcome feedback about possible
problems for projects being packaged on top of Fedora (and by extension
future RHELs). Executive summary of proposed changes (listed from the
top of diff[2]):
* Requirement to place multiple jars into subdirectories will be
lifted (still optionally allowed though)
* Addition of guidelines for compatibility packages (i.e packaging
multiple versions of library already present in the system)
* Maven2 references/templates removed
* We will use mvn-rpmbuild package (or possibly verify) instead of
install to simplify build dependencies
* Better explanation of %add_maven_depmap macro and its usage
* Addition of %pom_* macros for modifying pom.xml files instead of
using patches (useful when removing dependencies or disabling
submodules)
* Java EE API packaging guidelines. Basically we will pick one
implementation for each API and only that will be allowed to have
"Provides: javax.XXX". API usage is a mess currently
There is another point, and that is of JNI-related issues (i.e.
packaging Java applications trying to use native calls). Fedora (and
most other Linux distributions) traditionally supported multilib Java
environments partially. That means you can install i686 JVM on x86_64
host system and use it normally. However things would not work correctly
in case you wanted to use JNI library in such a setup. Work has been
started on a Fedora bug[3] to support multilib properly, but when I was
halfway done I realized it's more complicated. And it would make
packaging work of JNI libraries quite complicated. So I am working on a
different approach[4] which would simply ignore multilib problems for
Java packages. This would mean it would not be supported to install i686
java packages on x86_64 host (except VM itself).
Please put any JNI-related discussion on [4], and the rest you
can send as a reply to [5] (or just send it to me and I'll do my best to
fix the proposal).
Thanks,
[1]
https://fedoraproject.org/wiki/User:Akurtakov/JavaPackagingDraftUpdate
[2]
https://url.corp.redhat.com/53d8d41
[3]
https://bugzilla.redhat.com/show_bug.cgi?id=665576
[4]
https://fedoraproject.org/wiki/User:Sochotni/JavaMultilib
[5]
http://lists.fedoraproject.org/pipermail/java-devel/2012-June/004443.html
--
Stanislav Ochotnicky <sochotnicky(a)redhat.com>
Software Engineer - Base Operating Systems Brno
PGP: 7B087241
Red Hat Inc.
http://cz.redhat.com