Changeset 014d11ad for general/prog
- Timestamp:
- 06/24/2004 06:44:11 PM (20 years ago)
- Branches:
- 10.0, 10.1, 11.0, 11.1, 11.2, 11.3, 12.0, 12.1, 6.0, 6.1, 6.2, 6.2.0, 6.2.0-rc1, 6.2.0-rc2, 6.3, 6.3-rc1, 6.3-rc2, 6.3-rc3, 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, kea, ken/TL2024, ken/inkscape-core-mods, ken/tuningfonts, krejzi/svn, lazarus, lxqt, nosym, perl-modules, plabs/newcss, plabs/python-mods, python3.11, qt5new, rahul/power-profiles-daemon, renodr/vulkan-addition, systemd-11177, systemd-13485, trunk, upgradedb, xry111/intltool, xry111/llvm18, xry111/soup3, xry111/test-20220226, xry111/xf86-video-removal
- Children:
- bb2a071c
- Parents:
- c230e05
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
general/prog/j2sdk.xml
rc230e05 r014d11ad 19 19 <sect2> 20 20 <title>Introduction to j2sdk</title> 21 21 22 22 <para>The <application>J2SDK</application> package contains Sun's 23 23 <application>Java</application> development environment. This is useful for 24 24 developing <application>Java</application> programs and provides the runtime 25 environment necessary to run <application>Java</application> programs. It also 25 environment necessary to run <application>Java</application> programs. It also 26 26 includes a plug-in for browsers so that they can be <application>Java 27 27 </application> aware.</para> 28 28 29 29 <para> 30 30 The <acronym>JDK</acronym> comes in two flavors, a precompiled binary and a … … 33 33 owing to incompatibilities with <acronym>GCC</acronym>-3 compiled browsers. 34 34 This is not the case anymore.</para> 35 35 36 36 <para>The source package requires registration at the Sun 37 37 developer site and accepting the Sun Community Source License. 38 38 The source code cannot be downloaded from some countries, so for users 39 39 from those countries, the binary may be the only option.</para> 40 41 <para>Even if you plan on compiling the <acronym>JDK</acronym> source, you will 40 41 <para>Even if you plan on compiling the <acronym>JDK</acronym> source, you will 42 42 need to download the binary version to bootstrap the <acronym>JDK</acronym> 43 43 build. Follow the link below to download both source and binary packages. When 44 44 downloading the source also download the <application>Mozilla</application> 45 45 headers package available at the same location.</para> 46 46 47 47 <!-- 48 <para>For users who cannot download the <application>J2SDK</application> source owing to license restrictions, <application>blackdown 48 <para>For users who cannot download the <application>J2SDK</application> 49 source owing to license restrictions, <application>blackdown 49 50 </application> has an <acronym>GCC</acronym>-3 based precompiled version. 50 51 Check out <ulink url="http://www.blackdown.org/"/> for more 51 52 information.</para> 52 53 --> 53 54 54 55 <sect3><title>Package information</title> 55 56 <itemizedlist spacing='compact'> … … 70 71 &j2sdk-time;</para></listitem></itemizedlist> 71 72 </sect3> 72 73 73 74 <sect3><title>Additional downloads</title> 74 75 <itemizedlist spacing='compact'> 75 <listitem><para><ulink url="&patch-root;/j2sdk-1.4.2-fix -inline-asm-1.patch"/></para></listitem>76 <listitem><para><ulink url="&patch-root;/j2sdk-1.4.2-fix_inline_asm-1.patch"/></para></listitem> 76 77 <listitem><para><ulink url="&patch-root;/j2sdk-1.4.2-gcc33-1.patch"/></para></listitem> 77 <listitem><para><ulink url="&patch-root;/j2sdk-1.4.2-motif -mkmsgcat.patch"/></para></listitem>78 <listitem><para><ulink url="&patch-root;/j2sdk-1.4.2-remove -debug-image.patch"/></para></listitem>79 <listitem><para><ulink url="&patch-root;/j2sdk-1.4.2-remove -fixed-paths-1.patch"/></para></listitem>80 <listitem><para><ulink url="&patch-root;/j2sdk-1.4.2-static_cxx .patch"/></para></listitem>81 <listitem><para><ulink url="&patch-root;/j2sdk-1.4.2-ash .patch"/> (Only required if /bin/sh is symlinked to <xref linkend="ash"/>)</para></listitem>78 <listitem><para><ulink url="&patch-root;/j2sdk-1.4.2-motif_mkmsgcat-1.patch"/></para></listitem> 79 <listitem><para><ulink url="&patch-root;/j2sdk-1.4.2-remove_debug_image-1.patch"/></para></listitem> 80 <listitem><para><ulink url="&patch-root;/j2sdk-1.4.2-remove_fixed_paths-1.patch"/></para></listitem> 81 <listitem><para><ulink url="&patch-root;/j2sdk-1.4.2-static_cxx-1.patch"/></para></listitem> 82 <listitem><para><ulink url="&patch-root;/j2sdk-1.4.2-ash-1.patch"/> (Only required if /bin/sh is symlinked to <xref linkend="ash"/>)</para></listitem> 82 83 </itemizedlist> 83 84 </sect3> 84 85 85 86 86 <sect3><title><application>J2SDK</application> dependencies</title> 87 87 <sect4><title>Required</title> 88 <para>X (<xref linkend="xfree86"/> or <xref linkend="xorg"/>), <xref linkend="zip"/>, <xref89 linkend="unzip"/>, <xref linkend="cpio"/>, <xref linkend="alsa"/>, 90 and <xref linkend="tcsh"/>88 <para>X (<xref linkend="xfree86"/> or <xref linkend="xorg"/>), 89 <xref linkend="zip"/>, <xref linkend="unzip"/>, <xref linkend="cpio"/>, 90 <xref linkend="alsa"/>, and <xref linkend="tcsh"/> 91 91 </para></sect4> 92 92 </sect3> 93 93 94 94 </sect2> 95 95 96 96 <sect2> 97 97 <title>Installation of <application>J2SDK</application></title> 98 98 99 99 <para>Both versions will be installed in parallel. You may choose to keep 100 100 either or both.</para> 101 101 102 102 <para>Installation of the precompiled <acronym>JDK</acronym> is easy: 103 103 create a directory to install from, copy the .bin there, and run the 104 104 following commands:</para> 105 105 106 106 <screen><userinput><command>VERSION=&j2sdk-bin-version; && 107 107 MV=`echo $VERSION | cut -d "_" -f 1,1` && … … 115 115 install -d /opt/j2sdk/j2sdk-precompiled-${MV} && 116 116 mv * /opt/j2sdk/j2sdk-precompiled-${MV}</command></userinput></screen> 117 118 <para>The binary version is now installed. 119 120 <para>If you don't want to compile the source or are not in a pos tition to download the source121 owing to license restrictions, skip ahead to the configuration 122 section.</para>123 117 118 <para>The binary version is now installed.</para> 119 120 <para>If you don't want to compile the source or are not in a position to 121 download the source owing to license restrictions, skip ahead to the 122 configuration section.</para> 123 124 124 <para>Add the recently compiled <acronym>JDK</acronym> to the path.</para> 125 125 126 <screen><userinput><command>export JAVA_HOME=/opt/j2sdk/j2sdk-precompiled-${MV} && 126 127 export PATH=$PATH:${JAVA_HOME}/bin</command></userinput></screen> 127 128 128 129 <para>Unzip the source:</para> 129 130 130 131 <screen><userinput><command>VERSION=&j2sdk-src-version; && 131 132 V=`echo $VERSION | sed -e "s/\./_/g"` && … … 133 134 unzip j2sdk-${V}-mozilla_headers-unix.zip && 134 135 unzip j2sdk-${V}-bin-scsl.zip</command></userinput></screen> 135 136 136 137 <para>Apply all the patches downloaded above.</para> 137 138 <screen><userinput><command>for PATCH in fix -inline-asm-1 gcc33-1 motif-mkmsgcat\139 remove-debug-image remove-fixed-paths-1 \140 static_cxx 138 139 <screen><userinput><command>for PATCH in fix_inline_asm-1 gcc33-1 \ 140 motif_mkmsgcat-1 remove_debug_image-1 remove_fixed_paths-1 \ 141 static_cxx-1 141 142 do 142 143 patch -Np1 -i j2sdk-1.4.2-$PATCH.patch 143 144 done</command></userinput></screen> 144 145 145 146 <para>Set/unset some variables which affect the build:</para> 146 147 <screen><userinput><command>export ALT_BOOTDIR="$JAVA_HOME" && … … 157 158 export MAKE_VERBOSE=true && 158 159 export ALT_CACERTS_FILE=${ALT_BOOTDIR}/jre/lib/security/cacerts</command></userinput></screen> 159 160 <warning><para>Setting CFLAGS/CXXFLAGS/LDFLAGS is guaranteed to make the build fail.161 If you are interested in optimizing the build, set OTHER_CFLAGS/OTHER_CXXFLAGS/OTHER_LDFLAGS 162 instead.</para></warning>163 160 161 <warning><para>Setting CFLAGS/CXXFLAGS/LDFLAGS is guaranteed to make the build 162 fail. If you are interested in optimizing the build, set 163 OTHER_CFLAGS/OTHER_CXXFLAGS/OTHER_LDFLAGS instead.</para></warning> 164 164 165 <para>Additionally, if you would like to make in parallel, add the following 165 166 (adjust <envar>MAKE_PARALLEL</envar> to your liking):</para> 166 167 <screen><userinput><command>export HOTSPOT_BUILD_JOBS=$MAKE_PARALLEL</command></userinput></screen> 167 168 <para>If the included <application>Motif</application> doesn't build properly, the169 error is noticed much later in the build. 170 A solution is to build the <application>Motif</application> 171 library before compiling the<application>J2SDK</application>.</para>172 168 169 <para>If the included <application>Motif</application> doesn't build properly, 170 the error is noticed much later in the build. A solution is to build the 171 <application>Motif</application> library before compiling the 172 <application>J2SDK</application>.</para> 173 173 174 <screen><userinput><command>cd motif/lib/Xm && 174 175 make && 175 176 cd ../../..</command></userinput></screen> 176 177 177 178 <para>Make and Install <application>J2SDK</application> with the following 178 179 commands. There will be a lot of messages about missing files that look like 179 errors. As long as the build doesn't stop, the messages are harmless, so ignore 180 errors. As long as the build doesn't stop, the messages are harmless, so ignore 180 181 them.</para> 181 182 182 183 <screen><userinput><command>cd control/make && 183 184 make && … … 185 186 cd control/build/linux-i?86 && 186 187 cp -a j2sdk-image /opt/j2sdk/j2sdk-&j2sdk-src-version;</command></userinput></screen> 187 188 188 189 </sect2> 189 190 190 191 <sect2> 191 192 <title>Command explanations</title> 192 193 193 194 <para><command>export ALT_BOOTDIR="$JAVA_HOME"</command>: This var sets 194 location of the bootstrap <acronym>JDK</acronym>. 195 </para> 196 195 location of the bootstrap <acronym>JDK</acronym>.</para> 196 197 197 <para><command>export ALT_MOZILLA_PATH=$PWD</command>: This sets the 198 198 variable that points to where you unzipped the <application>Mozilla 199 199 </application> headers.</para> 200 200 201 201 <para><command>export ALT_DEVTOOLS_PATH="/usr/bin"</command>: This 202 changes the location where the build finds the needed executables. 203 </para> 204 202 changes the location where the build finds the needed executables.</para> 203 205 204 <para><command>export BUILD_NUMBER="blfs-`date +%s`"</command>: This will 206 205 help you identify this compiled version of the runtime environment and 207 206 virtual machine by appending this information to the version in the 208 207 output to <command>java -version</command>.</para> 209 208 210 209 <para><command>export DEV_ONLY=true</command>: This command 211 210 eliminates compiling the documentation and eliminates a dependency for 212 <application>rpm</application>. 213 211 <application>rpm</application>.</para> 212 214 213 <para><command>unset JAVA_HOME</command>: This clears the 215 <envar>JAVA_HOME</envar> 216 variable as recommended by the buildinstructions.</para>217 214 <envar>JAVA_HOME</envar> variable as recommended by the build 215 instructions.</para> 216 218 217 <para><command>unset CLASSPATH</command>: This clears the 219 <envar>CLASSPATH</envar> variable as per the recommendations in the build instructions.220 </para>221 218 <envar>CLASSPATH</envar> variable as per the recommendations in the build 219 instructions.</para> 220 222 221 <para><command>unset CFLAGS...</command>: These flags cause miscompilation 223 222 of the build. Never set these.</para> 224 223 225 224 <para><command>export INSANE=true</command>: Unless you specify that you 226 225 are insane the build will not proceed. The certified platform for the build is 227 226 Redhat 6.1. The above variable ensures that all the errors related to 228 227 compiling on a non-certified platform will be converted to warnings.</para> 229 228 230 229 <para><command>export MAKE_VERBOSE=true</command>: Allows the current 231 230 compilation command to be displayed on the console.</para> 232 231 233 232 <para><command>export ALT_CACERTS_FILE...</command>: Specifies the 234 233 certificate file to use.</para> 235 234 236 235 </sect2> 237 236 238 237 <sect2> 239 238 <title>Configuring <application>J2SDK</application></title> 240 239 241 240 <sect3><title>Configuration Information</title> 242 241 243 242 <para>We have two Java 2 <acronym>SDK</acronym>'s installed in 244 243 <filename>/opt/j2sdk</filename>. Decide on which one you 245 244 would like to use as the default. For example if you decide to use the source 246 245 compiled <application>J2SDK</application>, do the following:</para> 247 246 248 247 <screen><userinput><command>ln -nsf j2sdk-&j2sdk-src-version; /opt/j2sdk/j2sdk</command></userinput></screen> 249 248 250 249 <para>Add the following lines to your shell startup file (e.g., 251 250 <filename>/etc/profile</filename>).</para> 252 251 253 252 <screen><userinput>export JAVA_HOME=/opt/j2sdk/j2sdk 254 253 export PATH=$PATH:$JAVA_HOME/bin</userinput></screen> 255 254 256 255 <para>Add <filename>$JAVA_HOME/man</filename> to your 257 256 <envar>MANPATH</envar> variable or to 258 257 <filename>/etc/man.conf</filename></para> 259 258 260 259 <para>The <application>Java</application> plugin is in the directory 261 260 <filename class="directory">$JAVA_HOME/jre/plugin/i?86/ns610/</filename>. 262 261 Make a symbolic link to the file in that directory from your plugins directory.</para> 263 264 </sect3> 265 262 263 </sect3> 264 266 265 <sect3><title>Handling CLASSPATH</title> 267 266 268 267 <para>When compiling packages, the <envar>CLASSPATH</envar> environment variable 269 is used by JDK to locate classes at compile-time and run-time. It is tedious toadd all the classes used to the <envar>CLASSPATH</envar> manually. You may add 268 is used by JDK to locate classes at compile-time and run-time. It is tedious to 269 add all the classes used to the <envar>CLASSPATH</envar> manually. You may add 270 270 the following lines to your shell startup file to set <envar>CLASSPATH</envar> 271 271 automatically to include all JAR files in a specified directory, which in 272 272 the example below is <filename>/usr/lib/auto-java-classpath</filename>.</para> 273 273 274 274 <screen><userinput>AUTO_CLASSPATH_DIR=/usr/lib/auto-java-classpath 275 275 if [ -z $CLASSPATH ] … … 283 283 CLASSPATH=$CLASSPATH:$i 284 284 done</userinput></screen> 285 286 </sect3> 287 285 286 </sect3> 287 288 288 </sect2> 289 289 290 290 <sect2> 291 291 <title>Contents</title> 292 292 293 293 <para>The <application>J2SDK</application> package contains 294 294 <command>appletviewer</command>, … … 304 304 <command>serialver</command>, <command>servertool</command> and 305 305 <command>tnameserv</command>.</para> 306 307 </sect2> 308 306 307 </sect2> 308 309 309 <sect2><title>Description</title> 310 310 311 311 <sect3><title>appletviewer</title> 312 <para><command>appletviewer</command> runs 313 <application>Java</application> applets outside of the context of a 314 browser.</para></sect3> 315 312 <para><command>appletviewer</command> runs <application>Java</application> 313 applets outside of the context of a browser.</para></sect3> 314 316 315 <sect3><title>extcheck</title> 317 316 <para><command>extcheck</command> checks a specified <filename>JAR</filename> 318 317 file for title and version conflicts with any extensions installed in the 319 318 <acronym>JDK</acronym> software.</para></sect3> 320 319 321 320 <sect3><title>idlj</title> 322 321 <para><command>idlj</command> generates <application>Java</application> 323 322 bindings from a given <acronym>IDL</acronym> file.</para></sect3> 324 323 325 324 <sect3><title>jar</title> 326 325 <para><command>jar</command> combines multiple files into a single 327 326 <acronym>JAR</acronym> archive file.</para></sect3> 328 327 329 328 <sect3><title>jarsigner</title> 330 329 <para><command>jarsigner</command> signs <filename>JAR</filename> 331 330 (Java ARchive) files and verifies the signatures and integrity of a signed 332 331 <filename>JAR</filename>.</para></sect3> 333 332 334 333 <sect3><title>java</title> 335 334 <para><command>java</command> launches a <application>Java</application> … … 337 336 environment, loading a specified class and invoking its main 338 337 method.</para></sect3> 339 338 340 339 <sect3><title>javac</title> 341 340 <para><command>javac</command> reads class and interface definitions, written 342 341 in the <application>Java</application> programming language, and compiles them 343 342 into bytecode class files.</para></sect3> 344 343 345 344 <sect3><title>javadoc</title> 346 345 <para><command>javadoc</command> parses the declarations and documentation … … 348 347 a corresponding set of <acronym>HTML</acronym> pages describing the classes, 349 348 interfaces, constructors, methods, and fields.</para></sect3> 350 349 351 350 <sect3><title>javah</title> 352 351 <para><command>javah</command> generates <application>C</application> header 353 352 and source files that are needed to implement native methods.</para></sect3> 354 353 355 354 <sect3><title>javap</title> 356 355 <para><command>javap</command> disassembles a 357 356 <application>Java</application> class file.</para></sect3> 358 357 359 358 <sect3><title>jdb</title> 360 359 <para><command>jdb</command> is a simple command-line debugger for 361 360 <application>Java</application> classes.</para></sect3> 362 361 363 362 <sect3><title>keytool</title> 364 <para><command>keytool</command> is a key and certificate management utility.</para></sect3> 365 363 <para><command>keytool</command> is a key and certificate management 364 utility.</para></sect3> 365 366 366 <sect3><title>native2ascii</title> 367 367 <para><command>native2ascii</command> converts files that contain non-supported 368 character encoding into files containing Latin-1 or Unicode-encoded characters.</para></sect3> 369 368 character encoding into files containing Latin-1 or Unicode-encoded 369 characters.</para></sect3> 370 370 371 <sect3><title>orbd</title> 371 372 <para><command>orbd</command> is used to enable clients to transparently locate 372 373 and invoke persistent objects on servers in the <acronym>CORBA</acronym> 373 374 environment.</para></sect3> 374 375 375 376 <sect3><title>policytool</title> 376 377 <para><command>policytool</command> creates and manages a policy file 377 378 graphically.</para></sect3> 378 379 379 380 <sect3><title>rmic</title> 380 381 <para><command>rmic</command> generates stub and skeleton class files for 381 382 remote objects from the names of compiled <application>Java</application> 382 383 classes that contain remote object implementations.</para></sect3> 383 384 384 385 <sect3><title>rmid</title> 385 386 <para><command>rmid</command> starts the activation system daemon.</para> 386 387 </sect3> 387 388 388 389 <sect3><title>rmiregistry</title> 389 390 <para><command>rmiregistry</command> creates and starts a remote object 390 391 registry on the specified port on the current host.</para></sect3> 391 392 392 393 <sect3><title>serialver</title> 393 394 <para><command>serialver</command> returns the serialVersionUID for one or 394 395 more classes in a form suitable for copying into an evolving class.</para> 395 396 </sect3> 396 397 397 398 <sect3><title>servertool</title> 398 399 <para><command>servertool</command> provides an ease-of-use interface for 399 application programmers to register, unregister, startup and shutdown a server.</para></sect3> 400 400 application programmers to register, unregister, startup and shutdown a 401 server.</para></sect3> 402 401 403 <sect3><title>tnameserv</title> 402 404 <para><command>tnameserv</command> starts the <application>Java</application>
Note:
See TracChangeset
for help on using the changeset viewer.