Java is different from most of the packages in LFS and BLFS. It is a programming language that works with files of byte codes to obtain instructions and executes then in a Java Virtual Machine (JVM). An introductory java program looks like:
public class HelloWorld
{
public static void main(String[] args)
{
System.out.println("Hello, World");
}
}
This program is saved as HelloWorld.java
. The file name, HelloWorld, must match the class name. It
is then converted into byte code with javac HelloWorld.java. The output
file is HelloWorld.class
. The program
is executed with java
HelloWorld. This creates a JVM and runs the code. The
'class' extension must not be specified.
Several class files can be combined into one file with the jar command. This is similar to the standard tar command. For instance, the command jar cf myjar.jar *.class will combine all class files in a directory into one jar file. These act as library files.
The JVM can search for and use classes in jar files automatically. It
uses the CLASSPATH
environment variable to
search for jar files. This is a standard list of colon-separated
directory names similar to the PATH
environment variable.
This package is known to build and work properly using an LFS-7.5 platform.
Creating a JVM from source requires a set of circular dependencies. The first thing that's needed is a set of programs called a Java Development Kit (JDK). This set of programs includes java, javac, jar, and several others. It also includes several base jar files.
To start, we set up a binary installation of the JDK created by the
BLFS editors. It is installed in the /opt
directory to allow for multiple
installations, including a source based version.
Binary download (x86): http://anduin.linuxfromscratch.org/files/BLFS/OpenJDK-1.7.0.51/OpenJDK-1.7.0.51-i686-bin.tar.xz
Download MD5 sum: c4a5097fe08dc95defa65d1eb072752f
Download size (binary): 174 MB
Estimated disk space required: 547 MB
Binary download (x86_64): http://anduin.linuxfromscratch.org/files/BLFS/OpenJDK-1.7.0.51/OpenJDK-1.7.0.51-x86_64-bin.tar.xz
Download MD5 sum: cbd28cd7f89dadb6534b87ed712aedea
Download size (binary): 146 MB
Estimated disk space required: 424 MB
ATK-2.10.0, Cairo-1.12.16, Cups-1.7.1, gdk-pixbuf-2.30.4, giflib-5.0.5, GTK+-2.24.22, Little CMS-2.5, PulseAudio-4.0, and Xorg Libraries
Begin by extracting the appropriate binary tarball for your
architecture and changing to the extracted directory. Install the
binary OpenJDK with the following
commands as the root
user:
install -vdm755 /opt/OpenJDK-1.7.0.51-bin && mv -v * /opt/OpenJDK-1.7.0.51-bin && chown -R root:root /opt/OpenJDK-1.7.0.51-bin
Configure the temporary OpenJDK installation with the following commands:
export CLASSPATH=.:/usr/share/java && export PATH="$PATH:/opt/OpenJDK-1.7.0.51-bin/bin"
The binary version is now installed. If you don't want to compile the sources, skip ahead to the Configuring OpenJDK section. Otherwise, continue to the JUnit-4.11, apache-ant-1.9.3, and OpenJDK-1.7.0.51/IcedTea-2.4.5 sections.
Last updated on 2014-02-27 13:22:01 -0800