1 |
14 |
jlechner |
#!wml --include=..
|
2 |
|
|
|
3 |
|
|
#use wml::std::page
|
4 |
|
|
#use wml::std::lang
|
5 |
|
|
#use wml::fmt::isolatin
|
6 |
|
|
#use wml::std::case global=upper
|
7 |
|
|
|
8 |
|
|
|
9 |
|
|
|
10 |
|
|
|
11 |
|
|
|
12 |
|
|
#include
|
13 |
|
|
|
14 |
|
|
|
15 |
|
|
|
16 |
|
|
We are pleased to announce a new developer snapshot release of GNU Classpath.
|
17 |
|
|
|
18 |
|
|
GNU Classpath, Essential Libraries for Java, is a project to create free
|
19 |
|
|
core class libraries for use with runtimes, compilers and tools for the
|
20 |
|
|
java programming language.
|
21 |
|
|
|
22 |
|
|
GNU Classpath 0.11 can be downloaded from
|
23 |
|
|
ftp://ftp.gnu.org/pub/gnu/classpath/
|
24 |
|
|
or one of the ftp.gnu.org mirrors
|
25 |
|
|
http://www.gnu.org/order/ftp.html
|
26 |
|
|
|
27 |
|
|
File: classpath-0.11.tar.gz
|
28 |
|
|
MD5sum: fa0e0f2532b838e67f9d9f93d45556a2
|
29 |
|
|
|
30 |
|
|
Some highlights of this release (more extensive list below):
|
31 |
|
|
|
32 |
|
|
Inclusion of full javax.crypto, javax.security, javax.net and
|
33 |
|
|
subpackages. Complete implementation of java.awt.geom. GTK+ 2.4 AWT
|
34 |
|
|
peer implementation for AWT FileDialog, better java.awt.image
|
35 |
|
|
LookupTable, Kernel and BufferedImage support. AWT 1.0 Event Model
|
36 |
|
|
implemented, and new Swing classes (Spring, SpringLayout, JMenu,
|
37 |
|
|
JPopupMenu, JColorChooser, JComboBox, JTextField, internal JFrame
|
38 |
|
|
support and start of JTable and JTree implementations). The Collection
|
39 |
|
|
classes have seen extensive documentation updates. GNU Classpath
|
40 |
|
|
Examples have been added - a GPL demo framework for AWT and Swing.
|
41 |
|
|
|
42 |
|
|
Included, but not activated by default in this release is a Graphics2D
|
43 |
|
|
implementation based on the Cairo Graphics framework
|
44 |
|
|
(http://www.cairographics.org). Enabling this makes programs like
|
45 |
|
|
JFreeChart work on GNU Classpath based runtimes.
|
46 |
|
|
|
47 |
|
|
[It is recommended that people wanting to experiment with the
|
48 |
|
|
Graphics2D implementation follow the instructions for building gcj
|
49 |
|
|
with jhbuild which automatically builds the latest CVS version of GCJ
|
50 |
|
|
and Cairo at http://people.redhat.com/fitzsim/gcj-and-jhbuild.html]
|
51 |
|
|
|
52 |
|
|
Not yet included is an implementation of Generic collection classes
|
53 |
|
|
and classes for other 1.5 language extensions. Work on this is being
|
54 |
|
|
done on a special development branch that will be included in a future
|
55 |
|
|
GNU Classpath release when free runtimes, compilers and tools have all
|
56 |
|
|
been upgraded to support these new language features.
|
57 |
|
|
|
58 |
|
|
GNU Classpath uses the Mauve test suite for Compatibility, Completeness
|
59 |
|
|
and Correctness checking. This release passes 16816 of 17102 mauve tests.
|
60 |
|
|
Free Software programs and libraries tested against this release are
|
61 |
|
|
Ant, Eclipse 2.1, Eclipse 3.0 (starts up, but does not yet completely
|
62 |
|
|
run), JFreeChart (see above), the Nice programming language
|
63 |
|
|
environment (which can now be bootstrapped with any GNU Classpath
|
64 |
|
|
based runtime and which works out of the box with Kaffe and GCJ for
|
65 |
|
|
creating native executables), gcjwebplugin and many other programs,
|
66 |
|
|
libraries and applets.
|
67 |
|
|
|
68 |
|
|
Here are answers to some questions you might have about this project and
|
69 |
|
|
this release.
|
70 |
|
|
|
71 |
|
|
1). Who should use this software?
|
72 |
|
|
|
73 |
|
|
Although GNU Classpath is already capable of supporting many
|
74 |
|
|
applications written in the java programming language, this is a
|
75 |
|
|
development release. As such, there are still some unfinished
|
76 |
|
|
components, and some problems are to be expected. You should install it
|
77 |
|
|
if you are interested in GNU Classpath development or reporting bugs.
|
78 |
|
|
We appreciate both.
|
79 |
|
|
|
80 |
|
|
For end users we recommend to use one of the development environments
|
81 |
|
|
based on GNU Classpath which combine the core libraries with compilers
|
82 |
|
|
and other tools needed for creating applications and libraries.
|
83 |
|
|
|
84 |
|
|
* GCC with GCJ (http://gcc.gnu.org/java/)
|
85 |
|
|
* Kaffe (http://www.kaffe.org/)
|
86 |
|
|
|
87 |
|
|
2). What is required to build/install/run?
|
88 |
|
|
|
89 |
|
|
GNU Classpath requires a working GNU build environment and a byte code
|
90 |
|
|
compiler such as jikes, gcj or kjc. When creating native code you will
|
91 |
|
|
also need a working C compiler and up to date Gnome development
|
92 |
|
|
libraries (gtk+, libart and gdk-pixbuf). More information on the
|
93 |
|
|
precise version numbers for the tools and libraries can be found in
|
94 |
|
|
the INSTALL file.
|
95 |
|
|
|
96 |
|
|
You will also need a runtime environment. The following runtime
|
97 |
|
|
environments should work out of the box with GNU Classpath
|
98 |
|
|
|
99 |
|
|
* JamVM (http://jamvm.sourceforge.net/)
|
100 |
|
|
* Jikes RVM (http://www.ibm.com/developerworks/oss/jikesrvm/)
|
101 |
|
|
* Kissme (http://kissme.sourceforge.net/)
|
102 |
|
|
|
103 |
|
|
Note that these are just byte code execution runtimes. For development
|
104 |
|
|
of programs written in the java programming language you will also
|
105 |
|
|
need compilers and other tools for creating libraries and/or
|
106 |
|
|
executables (see question 1).
|
107 |
|
|
|
108 |
|
|
For other environments that might need modified version of the current
|
109 |
|
|
release see the README file. A complete list of virtual machines and
|
110 |
|
|
compilers known to be based on GNU Classpath can be found at our
|
111 |
|
|
website: http://www.gnu.org/software/classpath/stories.html
|
112 |
|
|
|
113 |
|
|
2). What platforms are supported?
|
114 |
|
|
|
115 |
|
|
GNU/Linux and FreeBSD on x86 and powerpc are regularly tested by the
|
116 |
|
|
developers. We plan to eventually support many others.
|
117 |
|
|
|
118 |
|
|
5). Where do I go for more information?
|
119 |
|
|
|
120 |
|
|
The project home page with information on our mailing list can be
|
121 |
|
|
found at http://www.gnu.org/software/classpath/
|
122 |
|
|
|
123 |
|
|
A good overview of the current status can be found on the GNU Classpath
|
124 |
|
|
at FOSDEM'04 page which describes the last GNU Classpath hacker meeting.
|
125 |
|
|
It includes reports and presentations on the current status and future
|
126 |
|
|
plans: http://www.gnu.org/software/classpath/events/fosdem04.html
|
127 |
|
|
|
128 |
|
|
The following presentation given during the Desktop Developers
|
129 |
|
|
Conference shows how to integrate GNU Claspath and GCJ more with the
|
130 |
|
|
Free Desktop environments: http://people.redhat.com/fitzsim/ddc2004/
|
131 |
|
|
|
132 |
|
|
6). How do I extend the functionality of the core classes?
|
133 |
|
|
|
134 |
|
|
Besides combining GNU Classpath with the runtimes and compilers above
|
135 |
|
|
you might want to add support for additional encryption libraries and
|
136 |
|
|
algorithms as provided by GNU Crypto
|
137 |
|
|
(http://www.gnu.org/software/gnu-crypto/). And for additional
|
138 |
|
|
extension libraries (mail, xml, activation, infobus, servlet) check
|
139 |
|
|
out GNU ClasspathX (http://www.gnu.org/software/classpathx).
|
140 |
|
|
|
141 |
|
|
Additional network protocol support is provided by a sub-project
|
142 |
|
|
called GNU Classpath Inetlib, an extension library to provide extra
|
143 |
|
|
network protocol support (ftp, finger, gopher) for GNU Classpath, but
|
144 |
|
|
it can also standalone to ease adding http, imap, pop3 and smtp client
|
145 |
|
|
support to applictions. Also distributed from
|
146 |
|
|
|
147 |
|
|
|
148 |
|
|
The following projects extend the functionality of GNU Classpath
|
149 |
|
|
with additional algorithms, new core packages and tools.
|
150 |
|
|
All are released under GPL compatible licenses:
|
151 |
|
|
|
152 |
|
|
* Jessie: A free implementation of the JSSE. Secure Sockets Extension.
|
153 |
|
|
http://www.nongnu.org/jessie/
|
154 |
|
|
* Tritonus: A implementation of the javax.sound API.
|
155 |
|
|
http://www.tritonus.org/
|
156 |
|
|
* gcjwebplugin: A plugin for the execution of applets in web browsers.
|
157 |
|
|
http://www.nongnu.org/gcjwebplugin/
|
158 |
|
|
|
159 |
|
|
Note that the above libraries might already have been included in the
|
160 |
|
|
various platforms that also integrate GNU Classpath like done by the
|
161 |
|
|
Kaffe project.
|
162 |
|
|
|
163 |
|
|
6). What is new in this release?
|
164 |
|
|
|
165 |
|
|
New in release 0.11 (Sep 13, 2004)
|
166 |
|
|
(See the ChangeLog file for a full list of changes.)
|
167 |
|
|
|
168 |
|
|
* javax.swing.Spring and SpringLayout support.
|
169 |
|
|
* Added pluggable look and feel support for BasicTextFieldUI and
|
170 |
|
|
BasicToolBarSeparatorUI.
|
171 |
|
|
* java.swing.text support for (Default and Layered) Highlighter, FieldView,
|
172 |
|
|
PlainView, TabExpander and TabableView added.
|
173 |
|
|
* Start of JTable and JTree implementation.
|
174 |
|
|
* Internal Swing frames work.
|
175 |
|
|
* JMenu and JPopupMenu work.
|
176 |
|
|
* New gtk+ AWT FileDialog peer now based on gtk+2.4 or higher.
|
177 |
|
|
* java.awt.image LookupTables and kernel support.
|
178 |
|
|
* Improved java.awt.image.BufferedImage support.
|
179 |
|
|
* AWT 1.0 event model support.
|
180 |
|
|
* GNU Classpath now comes with some example programs (see examples/README).
|
181 |
|
|
* New javax.crypto, javax.crypto.interfaces, javax.crypto.spec, javax.net,
|
182 |
|
|
javax.net.ssl, javax.security.auth, javax.security.auth.callback,
|
183 |
|
|
javax.security.auth.login, javax.security.auth.x500, javax.security.sasl
|
184 |
|
|
and org.ietf.jgss packages are now officially part of GNU Classpath.
|
185 |
|
|
Extra crypto algorithms can be obtained from the GNU Crypto project,
|
186 |
|
|
a full TLS implementation is provided by the Jessie project.
|
187 |
|
|
http://www.gnu.org/software/gnu-crypto/
|
188 |
|
|
http://www.nongnu.org/jessie/
|
189 |
|
|
* Frame.setIconImage() support.
|
190 |
|
|
* AWT GDKGraphics scaling.
|
191 |
|
|
* New configure flag --enable-gtk-cairo to build Graphics2D implementation
|
192 |
|
|
build on cairo and pangoft2. Enabled at runtime by defining the system
|
193 |
|
|
property gnu.java.awt.peer.gtk.Graphics=Graphics2D.
|
194 |
|
|
* javax.swing.JSpinner implemented.
|
195 |
|
|
* Extensive documentation update for java.util collection classes.
|
196 |
|
|
* java.awt.geom completed. Area, Arc2D, Ellipse2D and Line2D implemented.
|
197 |
|
|
* GNU JAXP is no longer included with GNU Classpath. Runtime, compiler and
|
198 |
|
|
tool integrators are encouraged to directly integrate GNU JAXP.
|
199 |
|
|
This release has been tested against GNU JAXP 1.1.
|
200 |
|
|
http://www.gnu.org/software/classpathx/jaxp/jaxp.html
|
201 |
|
|
* JColorChooser, JComboBox and JTextField implemented, including example
|
202 |
|
|
uses in GNU Classpath Examples swing Demo.
|
203 |
|
|
|
204 |
|
|
Runtime interface Changes:
|
205 |
|
|
|
206 |
|
|
* java.lang.Compiler now uses the new java.lang.VMCompiler; there is
|
207 |
|
|
a reference implementation that most VMs can use.
|
208 |
|
|
* java.lang.VMSystem has a new getenv(String) method and a reference C/JNI
|
209 |
|
|
implementation that should work on most Posix like systems.
|
210 |
|
|
* java.util.TimeZone has been split into a platform independent class and
|
211 |
|
|
a platform dependent class VMTimeZone. GNU Classpath comes with a generic
|
212 |
|
|
way to get at the default time zone for Posix/GNU-like platforms.
|
213 |
|
|
* [VM]AccessController improvements. In particular it handles
|
214 |
|
|
`doPrivileged' calls better, and allows for recursive `doPrivileged'
|
215 |
|
|
calls in the same Thread. (see vm/reference/java/security/)
|
216 |
|
|
|
217 |
|
|
The following people helped with this release:
|
218 |
|
|
|
219 |
|
|
Andreas Tobler (libgcj merging), Andrew Haley (object streams), Andrew
|
220 |
|
|
John Hughes (documentation, swing and acessibility), Archie Cobbs
|
221 |
|
|
(freebsd testing and bugfixing), Bryce McKinlay (libgcj merging, image
|
222 |
|
|
producers, access controller actions), Casey Marshall (crypto,
|
223 |
|
|
security and access controller implementation), Craig Black (image
|
224 |
|
|
scaling, round rect support, awt tear-off menus), Dalibor Topic (kaffe
|
225 |
|
|
merging), David Gilbert (documentation updates, mauve tests, awt and
|
226 |
|
|
geom bug fixes), David Jee (awt gtk+ image and choice fixes, frame
|
227 |
|
|
icon support, focus manger), Florian Weimer (bug reporting), Graydon
|
228 |
|
|
Hoare (lots of Swing and Graphics2D implementation and fixes), Guilhem
|
229 |
|
|
Lavaux (java.text bug fixing), Jerry Quinn (java.awt.image lookup
|
230 |
|
|
table and kernel implemented), Jeroen Frijters (Runtime loadlibrary,
|
231 |
|
|
encoding manager, file and classloader fixes), Ka-Hing Cheung
|
232 |
|
|
(jspinner implementation), Kim Ho (jcolorchooser, jtooltip, internal
|
233 |
|
|
jfram implementations, event and repaint manager fixes), Mark Wielaard
|
234 |
|
|
(packaging and coordination), Michael Koch (javax.swing.text
|
235 |
|
|
implementation, build environment, embedded window support, libgcj
|
236 |
|
|
merging, bug fixes), Olga Rodimina (swing combobox, jmenu and popup
|
237 |
|
|
menu support), Patrik Reali (web master, nio vm class restructuring),
|
238 |
|
|
Roman Kennke (boxlayout, spring and springlayout), Sven de Marothy
|
239 |
|
|
(java.awt.geom), Thomas Fitzsimmons (lots of gtk+ peers work, awt 1.0
|
240 |
|
|
event model), Tom Tromey (bug fixing, libgcj merging, vmcompiler).
|
241 |
|
|
|
242 |
|
|
|
243 |
|
|
|
244 |
|
|
|
245 |
|
|
|