Goal: Increased Modularity?

Nicolas Mailhot nicolas.mailhot at laposte.net
Wed Sep 5 19:29:45 UTC 2007


Le mercredi 05 septembre 2007 à 12:33 -0500, Les Mikesell a écrit :
> Nicolas Mailhot wrote:
> 
> >>> I want to know the correct JAVA_HOME and PATH settings for all the 
> >>> possible JVMs when they are installed as alternatives-conforming RPM 
> >>> packages but are not the system default.  Is this documented somewhere?
> >>
> So, where do I find the answer to the question above regarding the 
> correct JAVA_HOME and PATH to use a JVM that is not the system default?

If the question is "what is the list of the roots of all the possible
JVMs that may be released for Linux and packaged using jpp conventions"
– no one has the answer because no one knows the JVM list in the first
place. Given the vendor name, java standard version, build number etc
one can make an educated guess because people tend to use the same
template but there is no absolute naming requirement. The packager must
choose a unique directory name and it must be under %{libdir}/jvm that's
about it.

If the question is "how does a particular jpp-packaged app choose its
JVM" the answer is it follows the JAVA_HOME env var, and which can be
set:
1. in the user environment
2. in app-specific conf file
3. in user-level conf file
4. in system-level conf file
4. or falling all that trying pre-defined fallbacks (meaning java apps
require java or java-devel, if a java package is installed
%{libdir}/jvm/jre must exist and if a java-devel package is installed
ditto for %{libdir}/jvm/java

It's the responsability of the admin or user that overrides JAVA_HOME
instead of letting the scripts fallback to the defaults to make sure
JAVA_HOME is set properly (ie if you set it as something stupid things
will go boom)

> How is the split exports/private directory supposed to relate to that?

Read the documentation bundled with jpackage-utils

> > Fedora Java packaging as it's known today is a JPackage fork
> > (periodically rebased). The Red Hat Java group originally started from
> > its own package repository IIRC, but struggled to package the Java world
> > and decided later to use a JPackage base as its repo was more complete.
> 
> And what's the current situation with this now that Fedora and RHEL5 
> include some stuff that looks jpackage'd but isn't?   How do you 
> control, for example, which tomcat version you install?

How do you control the installed apache version ? You get the one the
Fedora maintainer selected. Same for Tomcat. You get the one Fedora
selected if you source Fedora, and you get the one JPP selected if you
source JPP. And the version will change from Fedora release to Fedora
release, and JPP release to JPP release.

If you're not happy with the choices you can contribute another
parallel-installable tomcat to Fedora or JPP, they're both projects open
to external contributions. But speaking as a former Tomcat packager –
it's a beast with tentacular dependencies, so you better allocate a lot
of packaging time.

If you have more java packaging questions I suggest posting on
jpackage-discuss, and not be offended if the answer is long in coming —
the project is ressource-starved.

-- 
Nicolas Mailhot
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 197 bytes
Desc: Ceci est une partie de message num?riquement sign?e
URL: <http://listman.redhat.com/archives/fedora-devel-list/attachments/20070905/960cca64/attachment.sig>


More information about the fedora-devel-list mailing list