Installing Java

From Funtoo
Revision as of 19:31, 27 October 2013 by Duncan.Britton (Talk | contribs)

Jump to: navigation, search

Contents

What is Java? What purpose does it serve?

Definition

"Java is a programming language and computing platform first released by Sun Microsystems in 1995. There are lots of applications and websites that will not work unless you have Java installed, and more are created every day. Java is fast, secure, and reliable. From laptops to datacenters, game consoles to scientific supercomputers, cell phones to the Internet, Java is everywhere!" (ttp://www.java.com/en/download/faq/whatis_java.xml Oracle page on Java])

Installing java

Editing your make.conf

To tell portage that we would like java pulled in the next time it is updated, we need to do the following:

 # nano /etc/portage/make.conf

Running that command should present you with a file containing something similar to this:

File:Make conf example.png
An example make.conf

In the file, if it does not exist, create a line like the following:

USE="java"

Press Ctrl+X , then y, then enter to write the changes to the file.

Emerging java

To install java, run the following command:

 # emerge --ask --update --newuse --deep @world

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  N     ] dev-java/java-config-wrapper-0.16  8 kB
[ebuild  N     ] sys-apps/baselayout-java-0.1.0  71 kB
[ebuild  N     ] dev-java/java-config-2.2.0-r1000:2  PYTHON_ABIS="2.7 3.3 -2.6 -3.1 -3.2 (-3.4)" 51 kB
[ebuild  N     ] app-admin/eselect-java-0.1.0  71 kB
[ebuild  N     ] dev-java/icedtea-bin-7.2.3.9:7  USE="X alsa cups -cjk -doc -examples -nsplugin -source" 47,781 kB
[ebuild  N     ] virtual/jdk-1.7.0:1.7  0 kB
[ebuild  N     ] virtual/jre-1.7.0:1.7  0 kB
Would you like to merge these packages? [Yes/No] yes

Testing to see if it emerged

To check that java installed on your system, run the following command:

java -version

If you get something like this, you are ready to use java!:

java version "1.7.0_21"OpenJDK Runtime Environment (IcedTea 2.3.9) (Gentoo build 1.7.0_21-b02)OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)

Using the java command

Overview of the command

The java command can be run like so:

  • java [options] class [argument ...]
  • java [options] -jar file.jar [argument ...]

List of [options]

  • -client : Select the Java HotSpot Client VM. A 64-bit capable jdk currently ignores this option and instead uses the Java Hotspot Server VM.
  • -server : Select the Java HotSpot Server VM. On a 64-bit capable jdk only the Java Hotspot Server VM is supported so the -server option is implicit.
  • -agentlib:libname[=options] : Load a native agent library libname, e.g. -agentlib:hprof
  • -agentpath:pathname[=options] : Load a native agent library or full pathname.
  • -classpath : The path to the class.
  • -cp classpath : Specify a list of directories, JAR archives, and ZIP archives to search for class files. Class path entries are separated by colons (:). Specifying -classpath or -cp overrides any setting of the CLASSPATH environment variable. If -classpath and -cp are not used and CLASSPATH is not set, the user class path consists of the current directory.
  • -Dproperty=value : Set a system property value.
  • -d32 : Requests that the program be run in a 32-bit execution environment.
  • -d64 : Requests that the program be run in a 64-bit execution environment.
  • -enableassertions[:<packagename>"..." | :<class name>]
  • -ea : Same syntax and use as the above
  • -disableassertions[:<package name>"..." | :<class name>]

Sources

Everything from the "List of [options]" section was taken from the java man page. To look at this man page, type man java at the command line.