public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: Karl Trygve Kalleberg <karltk@gentoo.org>
To: "Jörg Schaible" <joerg.schaible@gmx.de>
Cc: gentoo-dev@lists.gentoo.org, gentoo-java@lists.gentoo.org
Subject: Re: [gentoo-dev] Help with new Cocoon ebuild
Date: Fri, 9 Jan 2004 09:18:40 +0100	[thread overview]
Message-ID: <20040109081840.GA7591@boblycat.org> (raw)
In-Reply-To: <bthves$hko$1@sea.gmane.org>

On Wed, Jan 07, 2004 at 10:58:51PM +0100, Jörg Schaible wrote:
> Hi gang,
> 
> Also I am not sure about the strategy for the servlet container problem. If
> there is a default servlet container in the virtuals, Cocoon could be
> installed automatically, but I wonder if this is really what a user wants.
> Cocoon itself just is a "library" with samples. The generated webapp is of
> no use for production and mainly an example how to build your own webpp. It
> is fine, if you can test Cocoon after installation, but that's all.
> 

We are currently playing around with the following packaging scheme for java
applications (0th draft):

Each Java package will install its jar files into 
/usr/share/<packagename-slot>/lib/, instead of /usr/share/<packagename>/lib/

There will still be a 
/usr/share/<packagename-slot>/package.env file, and it can contain
more than just the CLASSPATH env variable.

The reason we want to use <packagename-slot> instead of <packagename-version>
is to ease upgrades within a slot. If two packages with the same slot are not
binary compatible, they should not be in the same slot anyway. Given the state
of some packages, the full version name may need to become the slot:/

(We may need to introduce additional env files in the future, or perhaps
 a /usr/share/<packagename-slot>/env.d/ directory for the complex packages.)

Then the idea is to update the startup scripts for the java applications themselves,
so that they piece together the final classpath:

run.sh:
---
export JAVA=`java-config -J`
export CLASSPATH=`java-config -p commons-logging-1,bcel-0,junit-3`
${JAVA} org.foobar.Main $*
---

For more complex packages, where we want to be able to add support for optional
features at runtime (or between runtimes, without reinstalling) by simple
symlinks. Example with a hypothetical package named 'java-server:

In the directory /opt/java-server/packages/, we add symlinks
'bcel-0' -> /usr/share/bcel-0/package.env, 
'common-logging-1' -> /usr/share/common-logging-1/package.env

/opt/java-server/run.sh will then scan its packages/ directory, and add the
relevant packages.env files to its environment before starting the server
itself. (Just reading the filenames in packages/ and passing these as a comma
separated list to java-config -p is sufficient).


Kind regards,

Karl T


PS. There comments are of course welcome.  

PPS. There is an ongoing effort spearheaded by Dalibor Topic, involving the 
Debian Java team, us, kaffe.org, jpackage.org and hopefully FreeBSD and the 
other major Linux distros about a common java packagaging policy. Until that
produces any tangible results (may be very soon), we're going to do some
experiments to map out the bare minimums.






--
gentoo-dev@gentoo.org mailing list


  parent reply	other threads:[~2004-01-09  8:18 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-01-07 21:58 [gentoo-dev] Help with new Cocoon ebuild Jörg Schaible
2004-01-07 22:35 ` [gentoo-dev] " Jörg Schaible
2004-01-09  8:18 ` Karl Trygve Kalleberg [this message]
2004-01-09  8:44   ` [gentoo-dev] " Eivind Tagseth
2004-01-09 11:48     ` Karl Trygve Kalleberg
2004-01-09 14:20   ` [gentoo-dev] Re: [gentoo-java] " Thomas T. Veldhouse

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20040109081840.GA7591@boblycat.org \
    --to=karltk@gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    --cc=gentoo-java@lists.gentoo.org \
    --cc=joerg.schaible@gmx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox