diff options
| author | Owen Jacobson <owen.jacobson@grimoire.ca> | 2013-10-16 14:37:49 -0400 |
|---|---|---|
| committer | Owen Jacobson <owen.jacobson@grimoire.ca> | 2013-10-16 14:59:15 -0400 |
| commit | 7dcff9999d1f46ce28f1b356643378f99b7edaf1 (patch) | |
| tree | a96cb53451440a57d3b9b26854ee82c662feef15 /wiki/java/install/ubuntu.md | |
| parent | f9f5c4ea988f535ae3943d56cfd4c92f8a3038a8 (diff) | |
How to install Java on two major Linux distributions.
Diffstat (limited to 'wiki/java/install/ubuntu.md')
| -rw-r--r-- | wiki/java/install/ubuntu.md | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/wiki/java/install/ubuntu.md b/wiki/java/install/ubuntu.md new file mode 100644 index 0000000..c74ff04 --- /dev/null +++ b/wiki/java/install/ubuntu.md @@ -0,0 +1,84 @@ +# Installing Java on Ubuntu + +Accurate as of: Java 7, Ubuntu 12.04. The instructions below assume an amd64 +(64-bit) installation. If you're still using a 32-bit OS, work out the +differences yourself. + +## Via Package Management (Apt) + +OpenJDK 7 is available via apt by default. + +To install the JDK: + + sudo aptitude update + sudo aptitude install openjdk-7-jdk + +To install the JRE only (without the JDK): + + sudo aptitude update + sudo aptitude install openjdk-7-jre + +To install the JRE without GUI support (appropriate for headless servers): + + sudo aptitude update + sudo aptitude install openjdk-7-jre-headless + +(You can also use `apt-get` instead of `aptitude`.) + +These packages interact with [the `alternatives` +system](http://manpages.ubuntu.com/manpages/hardy/man8/update-alternatives.8.html), +and have [a dedicated `alternatives` manager +script](http://manpages.ubuntu.com/manpages/hardy/man8/update-java-alternatives.8.html). +The `alternatives` system affects `/usr/bin/java`, `/usr/bin/javac`, and +browser plugins for applets and Java Web Start applications for browsers +installed via package management. It also affects the symlinks under +`/etc/alternatives` related to Java. + +To list Java versions available, with at least one Java version installed via +Apt: + + update-java-alternatives --list + +To switch to `java-1.7.0-openjdk-amd64` for all Java invocations: + + update-java-alternatives --set java-1.7.0-openjdk-amd64 + +The value should be taken from the first column of the `--list` output. + +### Tool support + +Most modern Java tools will pick up the installed JDK via `$PATH` and do not +need the `JAVA_HOME` environment variable set explicitly. For applications old +enough not to be able to detect the JDK, you can set `JAVA_HOME` to +`/usr/lib/jvm/java-1.7.0-openjdk-amd64`. + +## By Hand + +The [Java SE Development Kit +7](http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html) +tarballs can be installed by hand. Download the "Linux x64" `.tar.gz` version, +then unpack it in `/opt`: + + cd /opt + tar xzf ~/jdk-7u45-linux-x64.tar.gz + +This will create a directory named `/opt/jdk1.7.0_45` (actual version number +may vary) containing a ready-to-use Java dev kit. + +You will need to add the JDK's `bin` directory to `PATH` if you want commands +like `javac` and `java` to work without fully-qualifying the directory: + + cat > /etc/profile.d/oracle_jdk <<'ORACLE_JDK' + PATH="${PATH}:/opt/jdk1.7.0_45/bin" + export PATH + ORACLE_JDK + +(This will not affect non-interactive use; setting PATH for non-interactive +programs like build servers is beyond the scope of this document. Learn to use +your OS.) + +Installation this way does _not_ interact with the alternatives system (but +you can set that up by hand if you need to). + +For tools that cannot autodetect the JDK via `PATH`, you may need to set +`JAVA_HOME` to `/opt/jdk1.7.0_45`. |
