newsclasspath - News: GNU Classpath 0.99 Released!

Latest News
GNU Classpath 0.99 Released! posted by gnu_andrew, Fri 16 Mar 2012 07:55:04 PM UTC
GNU Classpath 0.98 "Better Late Than Never" released posted by gnu_andrew, Fri 06 Feb 2009 01:57:15 AM UTC
GNU Classpath 0.97.2 released posted by gnu_andrew, Fri 06 Jun 2008 02:30:44 AM UTC
GJDoc 0.7.9 released posted by gnu_andrew, Mon 21 Apr 2008 09:49:31 PM UTC
GNU Classpath 0.97.1 released posted by gnu_andrew, Tue 11 Mar 2008 10:54:30 PM UTC

GNU Classpath 0.99 Released!

Item posted by Andrew John Hughes <gnu_andrew> on Fri 16 Mar 2012 07:55:04 PM UTC.

We are proud to announce the release of GNU Classpath 0.99.

GNU Classpath, essential libraries for java, is a project to create free core class libraries for use with runtimes, compilers and tools for the java programming language.

The GNU Classpath developer snapshot releases are not directly aimed at the end user but are meant to be integrated into larger development platforms. For example JamVM, CACAO and Kaffe can make use of an installed copy of GNU Classpath 0.99, while GCC (gcj) will use the developer snapshots as a base for future versions. For more projects based on GNU Classpath,

This release brings with it a number of interesting new features:

  • Addition of java.util.regex.Pattern.quote.
  • Addition of
  • Addition of

There have also been many bugfixes over the past year. Those relevant to 0.99 can be found at

With the 0.95 release, we switched fully towards the 1.5 generics work that we previously released separately as classpath-generics. All this work is now fully integrated in the main release and various runtimes (gcj, cacao, jamvm, ikvm, etc) have been extended to take advantage of the new generics, annotations and enumeration support in the core library. As a consequence, only 1.5 capable compilers (currently the Eclipse Compiler for Java (ecj) and Sun's javac) may be used to build Classpath.

The GNU Classpath developers site provides detailed information on how to start with helping the GNU Classpath project and gives an overview of the core class library packages currently provided.

For each snapshot release generated documentation is provided through the gjdoc tool, which is part of GNU Classpath 0.99. Full documentation on the currently implementated packages and classes can be found at: We are looking into how to extend the documentation experience in the future. Please contact the mailinglist if you would like to help with this effort.

For more information about the project see also:

GNU Classpath home page:
Developer information (wiki):
Full class documentation:
GNU Classpath hackers:
Autobuilder, current build status, build snapshots:
Application test pages (wiki)
GNU Classpath hacking with Eclipse (wiki)
GNU Classpath promotion banners:

GNU Classpath 0.99 can be downloaded from or one of the mirrors

File: classpath-0.99.tar.gz
SHA256sum: f929297f8ae9b613a1a167e231566861893260651d913ad9b6c11933895fecc8

New in release 0.99 (Mar 07, 2012)

  • Addition of java.util.regex.Pattern.quote.
  • Addition of
  • Addition of
  • Bug fixes:

  - PR39408: gjavah doesn't generate constants in header files where they occur in a superclass
  - PR40590: namespace namespace broken in CNI
  - PR40630: java.util.Scanner fails when used for charset generation by the OpenJDK build
  - PR40653: Issue with XML stream writer and namespaces
  - PR40663: Support Stax API 1.0.1
  - PR39177: trunk revision 144128 - jar: internal error: java.lang.NullPointerException
  - PR41696: () returns false when it should return true
  - PR43536: CopyOnWriteArrayList bug in delete() when empty
  - PR36560: Error parsing zip file with larger files in it
  - Restrict access to VM classes.
  - Cleanup use of message resources.
  - Throw exception when encrypted zip file entries are encountered.
  - Fix infinite recursion in javax.print.attribute.standard.JobStateReasons.add.
  - Native code cleanups in GtkToolkit.c and jcl.c.
  - Only log when debugging is on.
  - PR44411: System.nanoTime() is not independent of wall-clock time
  - PR46775: Calling Policy.setPolicy with a new Policy object has no effect on the DefaultSecurityManager
  - Use implementation of VMClass.getSimpleName from gcj.
  - Simplify security determination in ProtectionDomain in situations where all permissions are available.
  - PR42390: Missing Security Manager checks in classpath apis
  - Throw NullPointerExceptions appropriately for compatibility with OpenJDK.
  - Use Integer.parseInt in preference to Integer.decode in java.util.Formatter.
  - Use same default capacity in java.util.HashMap as documented in OpenJDK.
  - Check for hashcode equality before calling equals in java.util.HashMap.put
  - Make sure match is within input data limits in java.util.regex.Matcher.find.
  - Fix misuse of ArrayList.set in javax.swing.text.html.StyleSheet.resolveStyle.
  - PR48131: incomplete dynamic bit lengths tree
  - Check for negative capacity in VMDirectByteBuffer's native code.
  - PR42823: tcp/ip sockets read/write operations causes memory leak
  - Generate META-INF/INDEX.LST for
  - Fix issues when building with -Werror and gcc 4.6.
  - PR40188: javah creates constants using name of superclass
  - PR45527: gjavah encodes $ as used in inner classes as 00024 where Oracle's javah does not
  - PR45526: gjavah does not implicitly produce header files for inner classes
  - Fix NullPointerException for null keys in java.util.HashMap.put.
  - Fix BEAST security issue in
  - RH712013: pdftk crashes with java.lang.ArrayIndexOutOfBoundsException

  • Updated to libtool 2.x.
  • Lots of warning fixes / addition of generics.
  • Fix license headers in tools.
  • Normalise whitespace.
  • Maintenance work on javac detection.
  • Mark plugin as unmaintained and disable by default.

The following people helped with this release:

  • Roland Brand
  • Gert Brettlecker
  • Chris Burdess
  • Ludovic Claude
  • Pekka Enberg
  • Jeroen Frijters
  • Richard Guenther
  • Andrew Haley
  • Andrew John Hughes
  • Ivan Maidanski
  • Daniel Noll
  • Rainer Orth
  • Mike Stump
  • Tom Tromey
  • Mark Wielaard
  • Ralf Wildenhues

We would also like to thank the numerous bug reporters and testers! In addition, we'd like to extend our thanks to all those who've contributed over the years and have helped in building a thriving and friendly community around the GNU Classpath project.


Back to the top

Powered by Savane 3.13-4b48.
Corresponding source code