source: general/prog/openjdk.xml@ 49b50d4

10.0 10.1 11.0 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 ken/refactor-virt krejzi/svn lazarus nosym perl-modules qt5new systemd-11177 systemd-13485 trunk xry111/git-date xry111/git-date-for-trunk xry111/git-date-test
Last change on this file since 49b50d4 was 49b50d4, checked in by DJ Lucas <dj@…>, 9 years ago

Added OpenJDK and removed "IcedTea6".

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@10274 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 36.8 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY anduin-download "http://anduin.linuxfromscratch.org/files/BLFS/OpenJDK-&openjdk-version;">
8 <!ENTITY openjdk-download-binary-x86 "&anduin-download;/OpenJDK-&openjdk-version;-i686-bin.tar.xz">
9 <!ENTITY openjdk-bin-md5sum-x86 "b449e15c4ff908db2cb6e4729649df6b">
10 <!ENTITY openjdk-bin-size-x86 "82 MB">
11 <!ENTITY openjdk-bin-buildsize-x86 "534 MB">
12
13 <!ENTITY openjdk-download-binary-x64 "&anduin-download;/OpenJDK-&openjdk-version;-x86_64-bin.tar.xz">
14 <!ENTITY openjdk-bin-md5sum-x64 "e1430a7fccc08985ec792765477c9ede">
15 <!ENTITY openjdk-bin-size-x64 "112 MB">
16 <!ENTITY openjdk-bin-buildsize-x64 "854 MB">
17
18 <!ENTITY icedtea-download "http://icedtea.classpath.org/download/source/icedtea-&icedtea-version;.tar.gz">
19
20 <!ENTITY icedtea-md5sum "f9c47b7340031fe0ba2d2fc04c5785ab">
21 <!ENTITY icedtea-size "4.6 MB">
22
23 <!ENTITY corba-download "&anduin-download;/corba.tar.gz">
24 <!ENTITY corba-md5sum "7c47c0aff6fdd10e273b32f4a0c86f9e">
25 <!ENTITY corba-size "1.4 MB">
26
27 <!ENTITY hotspot-download "&anduin-download;/hotspot.tar.gz">
28 <!ENTITY hotspot-md5sum "ccb03e59283e478e6047b243b2b33342">
29 <!ENTITY hotspot-size "9.0 MB">
30
31 <!ENTITY jaxp-download "&anduin-download;/jaxp.tar.gz">
32 <!ENTITY jaxp-md5sum "fe28339778835ccbcd3823a504148dc1">
33 <!ENTITY jaxp-size "3.8 MB">
34
35 <!ENTITY jaxws-download "&anduin-download;/jaxws.tar.gz">
36 <!ENTITY jaxws-md5sum "5a5c0596865c17dc91a6541af8778aef">
37 <!ENTITY jaxws-size "2.7 MB">
38
39 <!ENTITY jdk-download "&anduin-download;/jdk.tar.gz">
40 <!ENTITY jdk-md5sum "4c77fcca0fc44a9c9d2b6e09f4187e0a">
41 <!ENTITY jdk-size "43 MB">
42
43 <!ENTITY langtools-download "&anduin-download;/langtools.tar.gz">
44 <!ENTITY langtools-md5sum "d8e302ddb366c363685c95f5e4a06865">
45 <!ENTITY langtools-size "2.3 MB">
46
47 <!ENTITY openjdk-download "&anduin-download;/openjdk.tar.gz">
48 <!ENTITY openjdk-md5sum "86ec3297a13f512544712918db387ef5">
49 <!ENTITY openjdk-size "132 KB">
50
51 <!ENTITY rhino-download "ftp://ftp.mozilla.org/pub/mozilla.org/js/rhino1_7R3.zip">
52 <!ENTITY rhino-md5sum "99d94103662a8d0b571e247a77432ac5">
53 <!ENTITY rhino-size "4.5 MB">
54
55 <!ENTITY openjdk-buildsize "5.0-7.2 GB">
56 <!ENTITY openjdk-time "45 SBU (an additional 130 SBU for testsuite)">
57
58]>
59
60<sect1 id="openjdk" xreflabel="OpenJDK-&openjdk-version;">
61 <?dbhtml filename="openjdk.html" ?>
62
63 <sect1info>
64 <othername>$LastChangedBy$</othername>
65 <date>$Date$</date>
66 </sect1info>
67
68 <title>OpenJDK-&openjdk-version;</title>
69
70 <indexterm zone="openjdk">
71 <primary sortas="a-OpenJDK">OpenJDK</primary>
72 </indexterm>
73
74 <sect2 role="package">
75 <title>Introduction to OpenJDK and IcedTea</title>
76
77 <para><application>IcedTea</application> provides a build harness for the
78 <application>OpenJDK</application> package, Oracle's recently open-sourced
79 <application>Java</application> development environment. In order to
80 provide a completely free runtime environment, similar to Oracle's closed
81 distribution, the <application>IcedTea</application> build harness also
82 provides free, and arguably better versions of parts of the JDK which
83 have not been open-sourced to date. <application>OpenJDK</application> is
84 useful for developing <application>Java</application> programs and provides
85 a complete runtime environment to run <application>Java</application>
86 programs.</para>
87
88 <note><para>The browser plugin and webstart implementation have been split
89 off into a separate project. To provide a complete implementation, you will
90 need to later install <xref linkend="icedtea-web"/>.</para></note>
91
92 <para>OpenJDK is GPL'd code, however, it should be explained that there has
93 been a special exception made for non-free projects to use these classes in
94 their proprietary products. In similar fashion to the LGPL, which
95 allows non-free programs to link to libraries provided by free software,
96 the <ulink url="http://openjdk.java.net/legal/gplv2+ce.html">GNU
97 General Public License, version 2, with the Classpath Exception</ulink>
98 allows third party programs to use classes provided by free software
99 without the requirment that the third party software also be free. As with
100 the LGPL, any modifictaions made to the free software portions of a
101 third party application, must also be made freely availible.</para>
102
103 <note>
104 <para>The IcedTea build environment includes a very thorough, open source
105 test suite titled <application>JTreg</application>.
106 <application>JTreg</application> is intended to test the just built JDK
107 for reasonable compatibility with the closed Oracle JDK. However, in
108 order for an independent implementation to claim compatibility, including
109 the Oracle sponsored <application>OpenJDK</application> project, it must
110 pass a closed <application>JCK/TCK</application> test suite. No claims
111 of compatibility, even partial compatibility, may be made without
112 passing an approved test suite.</para>
113
114 <para>Oracle does provide free community access, on a case by case basis,
115 to a closed toolkit to ensure 100% compatibility with its proprietary JDK.
116 The binary version provided here has not been tested against the
117 <ulink url="http://openjdk.java.net/groups/conformance/JckAccess/jck-access.html">
118 TCK</ulink>. Any version that is built using the instructions given,
119 cannot claim to be compatible with the proprietary JDK, without the user
120 applying for, and completing the compatibility tests themselves.</para>
121
122 <para>With that in mind, the binaries produced using this build method are
123 regularly tested against the TCK by the members listed on the site above.
124 In addition to the community license above, an educational, non-commercial
125 license for the TCK can be obtained from
126 <ulink url="http://www.oracle.com/technetwork/java/index-137188.html">
127 here</ulink>.</para>
128 </note>
129
130 &lfs71_checked;
131
132 <bridgehead renderas="sect3">Source Package Information</bridgehead>
133 <itemizedlist spacing="compact">
134 <listitem>
135 <para>IcedTea Source Package
136 <simplelist>
137 <member>Download: <ulink url="&icedtea-download;"/></member>
138 <member>Download MD5 sum: &icedtea-md5sum;</member>
139 <member>Download Size: &icedtea-size;</member>
140 </simplelist>
141 </para>
142 </listitem>
143 <listitem>
144 <para>Corba Source
145 <simplelist>
146 <member>Download: <ulink url="&corba-download;"/></member>
147 <member>Download MD5 sum: &corba-md5sum;</member>
148 <member>Download Size: &corba-size;</member>
149 </simplelist>
150 </para>
151 </listitem>
152 <listitem>
153 <para>Hotspot Source
154 <simplelist>
155 <member>Download: <ulink url="&hotspot-download;"/></member>
156 <member>Download MD5 sum: &hotspot-md5sum;</member>
157 <member>Download Size: &hotspot-size;</member>
158 </simplelist>
159 </para>
160 </listitem>
161 <listitem>
162 <para>IcedTea Build Source
163 <simplelist>
164 <member>Download: <ulink url="&openjdk-download;"/></member>
165 <member>Download MD5 sum: &openjdk-md5sum;</member>
166 <member>Download Size: &openjdk-size;</member>
167 </simplelist>
168 </para>
169 </listitem>
170 <listitem>
171 <para>JAXP Source
172 <simplelist>
173 <member>Download: <ulink url="&jaxp-download;"/></member>
174 <member>Download MD5 sum: &jaxp-md5sum;</member>
175 <member>Download Size: &jaxp-size;</member>
176 </simplelist>
177 </para>
178 </listitem>
179 <listitem>
180 <para>JAXWS Source
181 <simplelist>
182 <member>Download: <ulink url="&jaxws-download;"/></member>
183 <member>Download MD5 sum: &jaxws-md5sum;</member>
184 <member>Download Size: &jaxws-size;</member>
185 </simplelist>
186 </para>
187 </listitem>
188 <listitem>
189 <para>Langtools Source
190 <simplelist>
191 <member>Download: <ulink url="&langtools-download;"/></member>
192 <member>Download MD5 sum: &langtools-md5sum;</member>
193 <member>Download Size: &langtools-size;</member>
194 </simplelist>
195 </para>
196 </listitem>
197 <listitem>
198 <para>OpenJDK Source
199 <simplelist>
200 <member>Download: <ulink url="&jdk-download;"/></member>
201 <member>Download MD5 sum: &jdk-md5sum;</member>
202 <member>Download Size: &jdk-size;</member>
203 </simplelist>
204 </para>
205 </listitem>
206 <listitem>
207 <para>Estimated disk space required: &openjdk-buildsize;</para>
208 </listitem>
209 <listitem>
210 <para>Estimated build time: &openjdk-time;</para>
211 </listitem>
212 </itemizedlist>
213
214 <bridgehead renderas="sect3">Binary Package Information</bridgehead>
215 <itemizedlist spacing="compact">
216 <listitem>
217 <para>Binary download (x86):
218 <ulink url="&openjdk-download-binary-x86;"/></para>
219 </listitem>
220 <listitem>
221 <para>Download MD5 sum: &openjdk-bin-md5sum-x86;</para>
222 </listitem>
223 <listitem>
224 <para>Download size (binary): &openjdk-bin-size-x86;</para>
225 </listitem>
226 <listitem>
227 <para>Estimated disk space required: &openjdk-bin-buildsize-x86;</para>
228 </listitem>
229 </itemizedlist>
230 <itemizedlist spacing="compact">
231 <listitem>
232 <para>Binary download (x86_64):
233 <ulink url="&openjdk-download-binary-x64;"/></para>
234 </listitem>
235 <listitem>
236 <para>Download MD5 sum: &openjdk-bin-md5sum-x64;</para>
237 </listitem>
238 <listitem>
239 <para>Download size (binary): &openjdk-bin-size-x64;</para>
240 </listitem>
241 <listitem>
242 <para>Estimated disk space required: &openjdk-bin-buildsize-x64;</para>
243 </listitem>
244 </itemizedlist>
245
246 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
247
248 <bridgehead renderas="sect4">Required Patches</bridgehead>
249 <itemizedlist spacing='compact'>
250 <listitem>
251 <para><ulink
252 url="&patch-root;/icedtea-&icedtea-version;-generate_cacerts-1.patch"/></para>
253 </listitem>
254 <listitem>
255 <para><ulink
256 url="&patch-root;/icedtea-&icedtea-version;-fixed_paths-1.patch"/></para>
257 </listitem>
258 <listitem>
259 <para><ulink
260 url="&patch-root;/icedtea-&icedtea-version;-fix_tests-1.patch"/></para>
261 </listitem>
262 </itemizedlist>
263
264 <bridgehead renderas="sect4">Required Jar File</bridgehead>
265 <itemizedlist spacing='compact'>
266 <listitem>
267 <para>Rhino Java Script
268 <simplelist>
269 <member>Download: <ulink url="&rhino-download;"/></member>
270 <member>Download MD5 sum: &rhino-md5sum;</member>
271 <member>Download Size: &rhino-size;</member>
272 </simplelist>
273 </para>
274 </listitem>
275 </itemizedlist>
276 <bridgehead renderas="sect3">OpenJDK Dependencies</bridgehead>
277
278 <bridgehead renderas="sect4">Optional Runtime Dependencies (required for
279 source installation)</bridgehead>
280 <para role="optional">
281 <xref linkend="cacerts"/>,
282 <xref linkend="cups"/>,
283 <xref linkend="gtk3"/>,
284 <xref linkend="giflib"/>,
285 <xref linkend="pulseaudio"/>,
286 <xref linkend="xorg7-lib"/> and
287 <xref linkend="xulrunner"/>.
288 </para>
289
290 <bridgehead renderas="sect4">Additional Requirements
291 (for source build, including optional requirements)</bridgehead>
292 <para role="required">
293 <xref linkend="apache-ant"/>,
294 <xref linkend="cpio"/>,
295 <xref linkend="unzip"/>,
296 <xref linkend="which"/>, and
297 <xref linkend="zip"/></para>
298
299 <para condition="html" role="usernotes">User Notes:
300 <ulink url="&blfs-wiki;/openjdk"/></para>
301
302 </sect2>
303
304 <sect2 role="installation">
305 <title>Installation of OpenJDK</title>
306
307 <para>The instructions below install both the binary and source versions.
308 You may stop after installing the binary version or continue on installing
309 the source version. You can choose to keep either or both.</para>
310
311 <bridgehead renderas="sect3">OpenJDK Binary Installation</bridgehead>
312 <para>Begin by extracting the appropriate binary tarball and changing to
313 the extracted dirctory. Install the binary
314 <application>OpenJDK</application> with the following commands as the
315 <systemitem class="username">root</systemitem> user:</para>
316
317<screen role="root"><userinput>install -vdm755 /opt/OpenJDK-&openjdk-version;-bin &amp;&amp;
318cp -R * /opt/OpenJDK-&openjdk-version;-bin &amp;&amp;
319chown -R root:root /opt/OpenJDK-&openjdk-version;-bin</userinput></screen>
320
321 <para>Configure the temporary <application>OpenJDK</application>
322 installation with the following commands:</para>
323
324<screen><userinput>export PATH_HOLD="${PATH}" &amp;&amp;
325export JAVA_HOME="/opt/OpenJDK-&openjdk-version;-bin" &amp;&amp;
326export CLASSPATH=".:/usr/share/java" &amp;&amp;
327export PATH="${PATH}:${JAVA_HOME}/bin"</userinput></screen>
328
329 <para>The binary version is now installed. If you don't want to compile the
330 sources, skip ahead to the configuration section.</para>
331
332 <bridgehead renderas="sect3">OpenJDK Source Installation</bridgehead>
333 <note><para>The source build of OpenJDK requires
334 <xref linkend="apache-ant"/>. You'll need to build that first to satisfy
335 the reciprocal dependency, and return to this section to continue building
336 OpenJDK.</para></note>
337
338 <para>Unlike other packages in BLFS, the <application>OpenJDK</application>
339 source packages are distributed in multiple downloads. Since the IcedTea
340 build harness wil be used to build <application>OpenJDK</application>,
341 begin by extracting the IcedTea package and changing into the
342 extracted dirctory.</para>
343
344 <para>The IcedTea <application>OpenJDK</application> distribuion requires
345 that <filename>js.jar</filename> (from the Rhino package) be in place in
346 order to provide a java-script implementation for the free JDK. If you have
347 not installed the js.jar file in another way, do so with the following
348 commands as the <systemitem class="username">root</systemitem> user:</para>
349
350<screen role="root"><userinput>unzip ../../rhino1_7R3.zip &amp;&amp;
351install -v -d -m755 /usr/share/java &amp;&amp;
352install -v -m755 rhino1_7R3/*.jar /usr/share/java</userinput></screen>
353
354 <para>As mentioned previously, <application>OpenJDK</application> is
355 composed of several individual projects of the proprietary
356 <application>JDK</application> that have been relicensed under an open
357 source license. Put all of the individual components into the source tree
358 with the following commands:</para>
359
360<screen><userinput>cp -v ../corba.tar.gz . &amp;&amp;
361cp -v ../hotspot.tar.gz . &amp;&amp;
362cp -v ../jaxp.tar.gz . &amp;&amp;
363cp -v ../jaxws.tar.gz . &amp;&amp;
364cp -v ../jdk.tar.gz . &amp;&amp;
365cp -v ../langtools.tar.gz . &amp;&amp;
366cp -v ../openjdk.tar.gz .</userinput></screen>
367
368 <para>Apply a patch to generate a valid cacerts file using the system CA
369 certificates:</para>
370
371<screen><userinput>patch -Np1 -i ../icedtea-&icedtea-version;-generate_cacerts-1.patch</userinput></screen>
372
373 <para>Apply a patch to replace fixed paths with ones appropriate for
374 BLFS:</para>
375
376<screen><userinput>patch -Np1 -i ../icedtea-&icedtea-version;-fixed_paths-1.patch</userinput></screen>
377
378 <para>Apply a patch to exclude known broken tests from the test suite:</para>
379
380<screen><userinput>patch -Np1 -i ../icedtea-&icedtea-version;-fix_tests-1.patch</userinput></screen>
381
382
383 <para>Configure and build the package with the following commands:</para>
384
385<screen><userinput>unset JAVA_HOME &amp;&amp;
386./autogen.sh &amp;&amp;
387./configure --with-jdk-home=/opt/OpenJDK-&openjdk-version;-bin \
388 --enable-nss \
389 --enable-pulse-java &amp;&amp;
390make</userinput></screen>
391
392 <para>To test the results, issue: <command>make jtregcheck</command>. The
393 included version of <application>jtreg</application> is old, and the test
394 suite is also very dependent on the host system and the environment that it
395 is run in. You should expect to see anywhere between a clean set of tests
396 and up to 160 failures in jdk with up to 17 errors in the tests themselves.
397 The majority of the 6000+ tests should pass. The reason for the
398 greatly varrying results is due to how stringent the testing environment
399 must be. Varrying architechtures, different versions of dependent
400 libraries, unexpected X Window environment and window managers, the CA
401 certificates used to generate the <filename>cacerts</filename> file, and
402 even any user input or power management or screen saver interuptions during
403 the testing can lead to various failures. While the known broken tests have
404 been removed, with the fix_tests patch above, the graphics tests faiulres
405 cannot be pre-determined (short of removing them all). Best bet for a
406 completely clean result is to run the test suite in a frambuffer on a
407 different screen (Xvfb). Even still, Disk I/O can cause failures.</para>
408
409 <para>Install the package with the following commands as the
410 <systemitem class="username">root</systemitem> user:</para>
411
412<screen role="root"><userinput>cp -R openjdk.build/j2sdk-image /opt/OpenJDK-&openjdk-version; &amp;&amp;
413chown -R root:root /opt/OpenJDK-&openjdk-version;</userinput></screen>
414
415 </sect2>
416
417 <sect2 role="commands">
418 <title>Command Explanations</title>
419
420 <para><command>./autogen.sh</command>: This command forces rebuilding of
421 auto-generated files to account for new options added to
422 <filename>configure</filename>.</para>
423
424 <para><parameter>--with-jdk-home</parameter>: This switch provides the
425 location of the temporary <application>JDK</application>.</para>
426
427 <para><parameter>--enable-nss</parameter>: This switch enables the
428 build to utilize additional crytography supplied by the nss
429 libraries.</para>
430
431 <para><parameter>--enable-pulse-audio</parameter>: This switch enables
432 building of the pulseaudio libraries (needed to provide a complete
433 implementation that is reasonably compatible with the proprietary
434 JDK).</para>
435
436 </sect2>
437
438 <sect2 role="configuration">
439 <title>Configuring OpenJDK</title>
440
441 <sect3>
442 <title>Configuration Information</title>
443
444 <para>There are now two <application>OpenJDK</application> SDKs
445 installed in <filename>/opt</filename>. You should decide on which one
446 you would like to use as the default. For example if you decide to use
447 the precompiled <application>OpenJDK</application>, do the following as
448 the <systemitem class="username">root</systemitem> user:</para>
449
450<screen role="root"><userinput>ln -v -nsf OpenJDK-&openjdk-version;-bin /opt/OpenJDK</userinput></screen>
451
452 <para>The information below assumes your system is set up using the
453 instructions found in
454 <quote><xref linkend="postlfs-config-profile"/></quote>. You may need to
455 extract the relevant information below and incorporate it into your
456 system's startup files if your system is set up differently.</para>
457
458 <para>Add the following <filename>openjdk.sh</filename> shell startup file
459 to the <filename>/etc/profile.d</filename> directory with the following
460 commands as the <systemitem class="username">root</systemitem> user:</para>
461
462<screen role="root"><userinput>cat &gt; /etc/profile.d/openjdk.sh &lt;&lt; "EOF"
463<literal># Begin /etc/profile.d/openjdk.sh
464
465# Set JAVA_HOME directory
466JAVA_HOME=/opt/OpenJDK
467
468# Adjust PATH
469pathappend ${JAVA_HOME}/bin PATH
470
471# Auto Java CLASSPATH
472# Copy jar files to, or create symlinks in this directory
473AUTO_CLASSPATH_DIR=/usr/share/java
474pathprepend . CLASSPATH
475for dir in `find ${AUTO_CLASSPATH_DIR} -type d 2>/dev/null`; do
476 pathappend $dir CLASSPATH
477done
478for jar in `find ${AUTO_CLASSPATH_DIR} -name "*.jar" 2>/dev/null`; do
479 pathappend $jar CLASSPATH
480done
481
482export JAVA_HOME CLASSPATH
483unset AUTO_CLASSPATH_DIR
484unset dir
485unset jar
486
487# End /etc/profile.d/openjdk.sh</literal>
488EOF</userinput></screen>
489
490 <para>Finally, add the man pages to <application>man_db</application>'s
491 configuration. As the <systemitem class="username">root</systemitem>
492 user:</para>
493
494<screen><userinput>cat &gt;&gt; /etc/man_db.conf &lt;&lt; "EOF" &amp;&amp;
495<literal>MANDATORY_MANPATH /opt/OpenJDK/man
496MANPATH_MAP /opt/OpenJDK/bin /opt/OpenJDK/man
497MANDB_MAP /opt/OpenJDK/man /var/cache/man/OpenJDK</literal>
498EOF
499mandb -c /opt/OpenJDK/man</userinput></screen>
500
501 </sect3>
502
503 </sect2>
504
505 <sect2 role="content">
506 <title>Contents</title>
507
508 <segmentedlist>
509 <segtitle>Installed Programs</segtitle>
510 <segtitle>Installed Libraries</segtitle>
511 <segtitle>Installed Directory</segtitle>
512
513 <seglistitem>
514 <seg>appletviewer, apt, extcheck, idlj, jar,
515 jarsigner, java, javac, javadoc, javah, javap, java-rmi.cgi,
516 jcmd, jconsole, jdb, jhat, jinfo, jmap, jps,
517 jrunscript, jsadebugd, jstack, jstat, jstatd, keytool,
518 native2ascii, orbd, pack200, policytool, rmic, rmid, rmiregistry,
519 schemagen, serialver, servertool, tnameserv, unpack200,
520 wsgen, wsimport, and xjc</seg>
521 <seg><envar>$JAVA_HOME</envar>/lib/*, and
522 <envar>$JAVA_HOME</envar>/jre/lib/*</seg>
523 <seg>/opt/openjdk-&openjdk-version;</seg>
524 </seglistitem>
525 </segmentedlist>
526
527 <variablelist>
528 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
529 <?dbfo list-presentation="list"?>
530 <?dbhtml list-presentation="table"?>
531
532 <varlistentry id="appletviewer">
533 <term><command>appletviewer</command></term>
534 <listitem>
535 <para>allows you to run applets outside of a web browser.</para>
536 <indexterm zone="openjdk appletviewer">
537 <primary sortas="b-appletviewer">appletviewer</primary>
538 </indexterm>
539 </listitem>
540 </varlistentry>
541
542 <varlistentry id="apt">
543 <term><command>apt</command></term>
544 <listitem>
545 <para>is an annotation processing tool.</para>
546 <indexterm zone="openjdk apt">
547 <primary sortas="b-apt">apt</primary>
548 </indexterm>
549 </listitem>
550 </varlistentry>
551
552 <varlistentry id="extcheck">
553 <term><command>extcheck</command></term>
554 <listitem>
555 <para>checks a specified jar file for title and version conflicts
556 with any extensions installed in the
557 <application>OpenJDK</application> software.</para>
558 <indexterm zone="openjdk extcheck">
559 <primary sortas="b-extcheck">extcheck</primary>
560 </indexterm>
561 </listitem>
562 </varlistentry>
563
564 <varlistentry id="idlj">
565 <term><command>idlj</command></term>
566 <listitem>
567 <para>generates Java bindings from a given IDL file.</para>
568 <indexterm zone="openjdk idlj">
569 <primary sortas="b-idlj">idlj</primary>
570 </indexterm>
571 </listitem>
572 </varlistentry>
573
574 <varlistentry id="jar">
575 <term><command>jar</command></term>
576 <listitem>
577 <para>combines multiple files into a single jar archive.</para>
578 <indexterm zone="openjdk jar">
579 <primary sortas="b-jar">jar</primary>
580 </indexterm>
581 </listitem>
582 </varlistentry>
583
584 <varlistentry id="jarsigner">
585 <term><command>jarsigner</command></term>
586 <listitem>
587 <para>signs jar files and verifies the signatures and integrity
588 of a signed jar file.</para>
589 <indexterm zone="openjdk jarsigner">
590 <primary sortas="b-jarsigner">jarsigner</primary>
591 </indexterm>
592 </listitem>
593 </varlistentry>
594
595 <varlistentry id="java">
596 <term><command>java</command></term>
597 <listitem>
598 <para>launches a Java application by starting a Java runtime
599 environment, loading a specified class and invoking its main
600 method.</para>
601 <indexterm zone="openjdk java">
602 <primary sortas="b-java">java</primary>
603 </indexterm>
604 </listitem>
605 </varlistentry>
606
607 <varlistentry id="javac">
608 <term><command>javac</command></term>
609 <listitem>
610 <para>reads class and interface definitions, written in the
611 Java programming language, and compiles them into bytecode
612 class files.</para>
613 <indexterm zone="openjdk javac">
614 <primary sortas="b-javac">javac</primary>
615 </indexterm>
616 </listitem>
617 </varlistentry>
618
619 <varlistentry id="javadoc">
620 <term><command>javadoc</command></term>
621 <listitem>
622 <para>parses the declarations and documentation comments in a
623 set of Java source files and produces a corresponding set of
624 HTML pages describing the classes, interfaces,constructors,
625 methods, and fields.</para>
626 <indexterm zone="openjdk javadoc">
627 <primary sortas="b-javadoc">javadoc</primary>
628 </indexterm>
629 </listitem>
630 </varlistentry>
631
632 <varlistentry id="javah">
633 <term><command>javah</command></term>
634 <listitem>
635 <para>generates C header and source files
636 that are needed to implement native methods.</para>
637 <indexterm zone="openjdk javah">
638 <primary sortas="b-javah">javah</primary>
639 </indexterm>
640 </listitem>
641 </varlistentry>
642
643 <varlistentry id="javap">
644 <term><command>javap</command></term>
645 <listitem>
646 <para>disassembles a Java class file.</para>
647 <indexterm zone="openjdk javap">
648 <primary sortas="b-javap">javap</primary>
649 </indexterm>
650 </listitem>
651 </varlistentry>
652
653 <varlistentry id="java-rmi.cgi">
654 <term><command>java-rmi.cgi</command></term>
655 <listitem>
656 <para>is the Java RMI client.</para>
657 <indexterm zone="openjdk java-rmi.cgi">
658 <primary sortas="b-java-rmi.cgi">java-rmi.cgi</primary>
659 </indexterm>
660 </listitem>
661 </varlistentry>
662
663 <varlistentry id="jcmd">
664 <term><command>jcmd</command></term>
665 <listitem>
666 <para>is a utility to send diagnostic command requests to a running
667 Java Virtual Machine.</para>
668 <indexterm zone="openjdk jcmd">
669 <primary sortas="b-jcmd">jcmd</primary>
670 </indexterm>
671 </listitem>
672 </varlistentry>
673
674 <varlistentry id="jconsole">
675 <term><command>jconsole</command></term>
676 <listitem>
677 <para>is a graphical console tool to monitor and manage both
678 local and remote Java applications and virtual machines.</para>
679 <indexterm zone="openjdk jconsole">
680 <primary sortas="b-jconsole">jconsole</primary>
681 </indexterm>
682 </listitem>
683 </varlistentry>
684
685 <varlistentry id="jdb">
686 <term><command>jdb</command></term>
687 <listitem>
688 <para>is a simple command-line debugger for Java classes.</para>
689 <indexterm zone="openjdk jdb">
690 <primary sortas="b-jdb">jdb</primary>
691 </indexterm>
692 </listitem>
693 </varlistentry>
694
695 <varlistentry id="jhat">
696 <term><command>jhat</command></term>
697 <listitem>
698 <para>parses a java heap dump file and allows viewing
699 in a webbrowser.</para>
700 <indexterm zone="openjdk jhat">
701 <primary sortas="b-jhat">jhat</primary>
702 </indexterm>
703 </listitem>
704 </varlistentry>
705
706 <varlistentry id="jinfo">
707 <term><command>jinfo</command></term>
708 <listitem>
709 <para>prints Java configuration information for a given Java
710 process, core file, or a remote debug server.</para>
711 <indexterm zone="openjdk jinfo">
712 <primary sortas="b-jinfo">jinfo</primary>
713 </indexterm>
714 </listitem>
715 </varlistentry>
716
717 <varlistentry id="jmap">
718 <term><command>jmap</command></term>
719 <listitem>
720 <para>prints shared object memory maps or heap memory details
721 of a given process, core file, or a remote debug server.</para>
722 <indexterm zone="openjdk jmap">
723 <primary sortas="b-jmap">jmap</primary>
724 </indexterm>
725 </listitem>
726 </varlistentry>
727
728 <varlistentry id="jps">
729 <term><command>jps</command></term>
730 <listitem>
731 <para>lists the instrumented JVMs on the target system.</para>
732 <indexterm zone="openjdk jps">
733 <primary sortas="b-jps">jps</primary>
734 </indexterm>
735 </listitem>
736 </varlistentry>
737
738 <varlistentry id="jrunscript">
739 <term><command>jrunscript</command></term>
740 <listitem>
741 <para>is a command line script shell.</para>
742 <indexterm zone="openjdk jrunscript">
743 <primary sortas="b-jrunscript">jrunscript</primary>
744 </indexterm>
745 </listitem>
746 </varlistentry>
747
748 <varlistentry id="jsadebugd">
749 <term><command>jsadebugd</command></term>
750 <listitem>
751 <para>attaches to a Java process or core file and acts as a
752 debug server.</para>
753 <indexterm zone="openjdk jsadebugd">
754 <primary sortas="b-jsadebugd">jsadebugd</primary>
755 </indexterm>
756 </listitem>
757 </varlistentry>
758
759 <varlistentry id="jstack">
760 <term><command>jstack</command></term>
761 <listitem>
762 <para>prints Java stack traces of Java threads for a given
763 Java process, core file, or a remote debug server.</para>
764 <indexterm zone="openjdk jstack">
765 <primary sortas="b-jstack">jstack</primary>
766 </indexterm>
767 </listitem>
768 </varlistentry>
769
770 <varlistentry id="jstat">
771 <term><command>jstat</command></term>
772 <listitem>
773 <para>displays performance statistics for an instrumented JVM.</para>
774 <indexterm zone="openjdk jstat">
775 <primary sortas="b-jstat">jstat</primary>
776 </indexterm>
777 </listitem>
778 </varlistentry>
779
780 <varlistentry id="jstatd">
781 <term><command>jstatd</command></term>
782 <listitem>
783 <para>is an RMI server application that monitors for the creation
784 and termination of instrumented JVMs.</para>
785 <indexterm zone="openjdk jstatd">
786 <primary sortas="b-jstatd">jstatd</primary>
787 </indexterm>
788 </listitem>
789 </varlistentry>
790
791 <varlistentry id="keytool">
792 <term><command>keytool</command></term>
793 <listitem>
794 <para>is a key and certificate management utility.</para>
795 <indexterm zone="openjdk keytool">
796 <primary sortas="b-keytool">keytool</primary>
797 </indexterm>
798 </listitem>
799 </varlistentry>
800
801 <varlistentry id="native2ascii">
802 <term><command>native2ascii</command></term>
803 <listitem>
804 <para> converts files that contain non-supported character encoding
805 into files containing Latin-1 or Unicode-encoded characters.</para>
806 <indexterm zone="openjdk native2ascii">
807 <primary sortas="b-native2ascii">native2ascii</primary>
808 </indexterm>
809 </listitem>
810 </varlistentry>
811
812 <varlistentry id="orbd">
813 <term><command>orbd</command></term>
814 <listitem>
815 <para>is used to enable clients to transparently locate and invoke
816 persistent objects on servers in the CORBA environment.</para>
817 <indexterm zone="openjdk orbd">
818 <primary sortas="b-orbd">orbd</primary>
819 </indexterm>
820 </listitem>
821 </varlistentry>
822
823 <varlistentry id="pack200">
824 <term><command>pack200</command></term>
825 <listitem>
826 <para>is a Java application that transforms a jar file into a
827 compressed pack200 file using the Java gzip compressor.</para>
828 <indexterm zone="openjdk pack200">
829 <primary sortas="b-pack200">pack200</primary>
830 </indexterm>
831 </listitem>
832 </varlistentry>
833
834 <varlistentry id="policytool">
835 <term><command>policytool</command></term>
836 <listitem>
837 <para>creates and manages a policy file graphically.</para>
838 <indexterm zone="openjdk policytool">
839 <primary sortas="b-policytool">policytool</primary>
840 </indexterm>
841 </listitem>
842 </varlistentry>
843
844 <varlistentry id="rmic">
845 <term><command>rmic</command></term>
846 <listitem>
847 <para>generates stub and skeleton class files for remote objects
848 from the names of compiled Java classes that contain remote
849 object implementations.</para>
850 <indexterm zone="openjdk rmic">
851 <primary sortas="b-rmic">rmic</primary>
852 </indexterm>
853 </listitem>
854 </varlistentry>
855
856 <varlistentry id="rmid">
857 <term><command>rmid</command></term>
858 <listitem>
859 <para>starts the activation system daemon.</para>
860 <indexterm zone="openjdk rmid">
861 <primary sortas="b-rmid">rmid</primary>
862 </indexterm>
863 </listitem>
864 </varlistentry>
865
866 <varlistentry id="rmiregistry">
867 <term><command>rmiregistry</command></term>
868 <listitem>
869 <para>creates and starts a remote object registry on the specified
870 port on the current host.</para>
871 <indexterm zone="openjdk rmiregistry">
872 <primary sortas="b-rmiregistry">rmiregistry</primary>
873 </indexterm>
874 </listitem>
875 </varlistentry>
876
877 <varlistentry id="schemagen">
878 <term><command>schemagen</command></term>
879 <listitem>
880 <para>is a Java XML binding schema generator.</para>
881 <indexterm zone="openjdk schemagen">
882 <primary sortas="b-schemagen">schemagen</primary>
883 </indexterm>
884 </listitem>
885 </varlistentry>
886
887 <varlistentry id="serialver">
888 <term><command>serialver</command></term>
889 <listitem>
890 <para>returns the serialVersionUID for one or more classes in a
891 form suitable for copying into an evolving class.</para>
892 <indexterm zone="openjdk serialver">
893 <primary sortas="b-serialver">serialver</primary>
894 </indexterm>
895 </listitem>
896 </varlistentry>
897
898 <varlistentry id="servertool">
899 <term><command>servertool</command></term>
900 <listitem>
901 <para>provides an ease-of-use interface for application programmers
902 to register, unregister, startup and shutdown a server.</para>
903 <indexterm zone="openjdk servertool">
904 <primary sortas="b-servertool">servertool</primary>
905 </indexterm>
906 </listitem>
907 </varlistentry>
908
909 <varlistentry id="tnameserv">
910 <term><command>tnameserv</command></term>
911 <listitem>
912 <para>starts the Java IDL name server.</para>
913 <indexterm zone="openjdk tnameserv">
914 <primary sortas="b-tnameserv">tnameserv</primary>
915 </indexterm>
916 </listitem>
917 </varlistentry>
918
919 <varlistentry id="unpack200">
920 <term><command>unpack200</command></term>
921 <listitem>
922 <para>is a native implementation that transforms a packed file
923 produced by <application>pack200</application> into a jar
924 file.</para>
925 <indexterm zone="openjdk unpack200">
926 <primary sortas="b-unpack200">unpack200</primary>
927 </indexterm>
928 </listitem>
929 </varlistentry>
930
931 <varlistentry id="wsgen">
932 <term><command>wsgen</command></term>
933 <listitem>
934 <para>generates JAX-WS portable artifacts used in JAX-WS
935 web services.</para>
936 <indexterm zone="openjdk wsgen">
937 <primary sortas="b-wsgen">wsgen</primary>
938 </indexterm>
939 </listitem>
940 </varlistentry>
941
942 <varlistentry id="wsimport">
943 <term><command>wsimport</command></term>
944 <listitem>
945 <para>generates JAX-WS portable artifacts.</para>
946 <indexterm zone="openjdk wsimport">
947 <primary sortas="b-wsimport">wsimport</primary>
948 </indexterm>
949 </listitem>
950 </varlistentry>
951
952 <varlistentry id="xjc">
953 <term><command>xjc</command></term>
954 <listitem>
955 <para>is a Java XML binding compiler.</para>
956 <indexterm zone="openjdk xjc">
957 <primary sortas="b-xjc">xjc</primary>
958 </indexterm>
959 </listitem>
960 </varlistentry>
961
962 </variablelist>
963
964 </sect2>
965
966</sect1>
Note: See TracBrowser for help on using the repository browser.