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

Report from the Debian Java developers meeting at FOSDEM



The Debian project shared a developers' room at FOSDEM (http://www.fosdem.org/) with Free Java developers so this room was particularly interesing for Debian Java maintainers like me. I had a lot of discussions with Grzegorz Prokopski, Arnaud Vandyck and Dalibor Topic but also with some GNU classpath, Kaffe and gcj developers.


The talk by Arnaud and Dalibor

Arnaud and Dalibor gave a talk about packaging Java software which covered JPackage (http://www.jpackage.org/), Gentoo, FreeBSD and of course Debian. One goal of this talk was to improve collaboration between these projects and Red Hat's effort to package Java software which is compiled to native code using gcj (http://gcc.gnu.org/java/).

Unfortuantely, there were no Gentoo and FreeBSD Java developers present so I could only talk to one JPackage developer about this. It turned out that JPackage tries to make their packages work with differnt JVMs but they don't care as much as we do about running Java software with Free JVMs so their main interest is intergation of Java packages.

But the developers of Free Java Software (GNU classpath, Kaffe, SableVM and gcj) were very interested in more collaboration. One of their main problems is that they don't get enough feedback from end users if a Java application does not work with their JVM. It's often just an unimplemented method or a small bug that needs to be fixed to make larger applications work. So the Wiki page at http://java.debian.net/index.php/MovingJavaToMain which was started by Arnaud is also useful to them. In the future, the Debian Java maintainers will try even harder to make their packages work with free JVMs and send their results to them.


Main discussions with Java developers

Besides the issue of better collaboration we also had a lot of technical
discussions:

- The proposed new Debian Java Policy by Jan Schulz

  The core of this proposal is a script called findjava which tries to
  find a suitable JVM based on the installed JVMs, requirements of
  library packages and user preferences. Arnaud, Dalibor and Grzegorz
  agreed with me that there's no way to test Java libraries with all
  possible JVMs so findjava can never know which Java libraries work
  with which JVM. We'll have to discuss this further on the debian-java
  mailing list.

- How to deal with non-free JVMs

  There are currently non-free Debian packages from Blackdown
  (http://www.blackdown.org/) for JDK 1.3 and 1.4
  but most users seem to prefer to install a JDK from Sun in /usr/local.
  There should be some easy way to "register" these JDKs so installed
  Java packages will use them. This is what findjava (see above)
  tries to accomplish but setting JAVA_HOME in a configuration file is
  also an option and mpore compatible with what most other Java software
  expects.

- License conflicts with GPL'ed Java interpreters

  Currently Kaffe 1.1.x is the best choice for running Java applications
  in Debian. It is, however, licensed under the GPL so there's been some
  discussion whether Java software which is licensed e.g. under the
  Apache License (version 1.1 or 2.0) can be run with it. The opinion of
  the Free Software Foundation can be found at
  http://www.gnu.org/licenses/gpl-faq.html#IfInterpreterIsGPL, however
  some developers have a different point of view since Kaffe's core
  classes are just another implementation of the standard Java API.

  The long-term solution to this problem is probably the ongoing merge
  with GNU classpath (http://www.gnu.org/software/classpath/) which is
  licensed under the GPL with a linking exception. In a couple of
  months, basically all free JVMs will use GNU classpath as their core
  library. So the question for Debian Java packages will simlply be:
  Does if work with GNU classpath. If yes, the packages can go into
  main.

- Native compilation

  Mark Wielaard and Tom Tromey showed a natively compiled version of
  Eclipse (http://www.eclipse.org) using gcj. Arnaud and I talked to
  them about packaging natively compiled software but this still
  requires patches for gcj so this is not yet an option for Debian. It
  will of course be interesting after the release of sarge but let's
  first see how well this works in the next release of Fedora/Red Hat.

There were also a lot of other discussions which are more or less relevant for Debian. For example, Chris Halls and Rene Engelhard talked to Dalibor about ways to build the Debian Openoffice.org packages with Java support.


Next steps

We'll try to get more Java packages from contrib to main. gjdoc will be a major step for this since this would allow us to build Javadoc API documenation for library packages in main. We will also try to set up some testing environments for building Java packages with Kaffe and SableVM so we don't have to manually try each new upstream version.

We also need to get/keep the free JVMs working on all architectures so they move to testing. This is the part where we currently need most help so if porters have a couple of minutes (or should I say hours?) please help us. Just send a mail to the debian-java mailing list.

Stefan



Reply to: