Difference between revisions of "JDK setup"
Line 3: | Line 3: | ||
It's everywhere, and you need some library to execute these programs. | It's everywhere, and you need some library to execute these programs. | ||
− | + | ||
+ | |||
+ | =Get Java= | ||
2 versions of Java are available: | 2 versions of Java are available: | ||
* '''JRE''' as Java Runtime Environment. For end-users. Download JRE: https://java.com/getjava | * '''JRE''' as Java Runtime Environment. For end-users. Download JRE: https://java.com/getjava | ||
Line 10: | Line 12: | ||
You need to install the JDK on your development station & servers. | You need to install the JDK on your development station & servers. | ||
− | |||
− | ==Linux installation | + | |
+ | =Windows installation= | ||
+ | |||
+ | 1. Create a new environment variable | ||
+ | * Name: JAVA_HOME | ||
+ | * Value: path to your JDK installation (C:\Program Files\java\jdk1.7.0_45) | ||
+ | |||
+ | 2. Update the PATH | ||
+ | * Add following sequence to the end of the PATH variable: | ||
+ | > %JAVA_HOME%\bin | ||
+ | |||
+ | 3. Check installation | ||
+ | * Open a new terminal console [Run -> "cmd"] | ||
+ | * Run: java -version | ||
+ | |||
+ | |||
+ | |||
+ | =Linux installation= | ||
On a server, I advise you to put the JDK instead of the JRE. Many services requires the JDK such as JMX. | On a server, I advise you to put the JDK instead of the JRE. Many services requires the JDK such as JMX. | ||
Line 19: | Line 37: | ||
I advise you to use the official ORACLE library, instead of the OpenSource OpenJDK due to stability issues and JavaFX2 compability. | I advise you to use the official ORACLE library, instead of the OpenSource OpenJDK due to stability issues and JavaFX2 compability. | ||
− | + | ||
+ | ==ORACLE JVM automatic installation (ubuntu)== | ||
This is for Ubuntu based distributions only. | This is for Ubuntu based distributions only. | ||
Line 39: | Line 58: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | ||
− | + | ==ORACLE JVM manual installation (debian)== | |
+ | |||
+ | ===Download JDK=== | ||
+ | |||
You've to retrieve the JDK / JRE from the ORACLE website | You've to retrieve the JDK / JRE from the ORACLE website | ||
* Through a graphical interface: http://www.oracle.com/technetwork/java/javase/downloads/index.html | * Through a graphical interface: http://www.oracle.com/technetwork/java/javase/downloads/index.html | ||
Line 50: | Line 72: | ||
$ORACLE_JVM_URL --output-document=$ORACLE_JVM_FILENAME | $ORACLE_JVM_URL --output-document=$ORACLE_JVM_FILENAME | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
You have to adjust the ORACLE_JVM_URL to the exact JVM you want to use. | You have to adjust the ORACLE_JVM_URL to the exact JVM you want to use. | ||
− | + | ||
+ | ===Installation=== | ||
+ | |||
* Get binaries | * Get binaries | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
Line 59: | Line 84: | ||
cd /usr/lib/jvm | cd /usr/lib/jvm | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
* Register new version | * Register new version | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
Line 67: | Line 93: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
You have to adjust the source folder /usr/lib/jvm/'''jdk1.7.0_45'''/bin/. | You have to adjust the source folder /usr/lib/jvm/'''jdk1.7.0_45'''/bin/. | ||
+ | |||
* Adjust symlink | * Adjust symlink | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
Line 73: | Line 100: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
You have to adjust the source folder in LS command. | You have to adjust the source folder in LS command. | ||
+ | |||
* Set system default version | * Set system default version | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
Line 80: | Line 108: | ||
update-alternatives --config jar | update-alternatives --config jar | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
* Check result | * Check result | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
Line 85: | Line 114: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | ||
+ | ===Environment variable JAVA_HOME=== | ||
You need to add an environment variable JAVA_HOME, if it does not already exist: | You need to add an environment variable JAVA_HOME, if it does not already exist: | ||
* Debian | * Debian | ||
Line 91: | Line 121: | ||
vim /etc/profile | vim /etc/profile | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
* Ubuntu | * Ubuntu | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
Line 100: | Line 131: | ||
export JAVA_HOME="/usr/lib/jvm/default-java" | export JAVA_HOME="/usr/lib/jvm/default-java" | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
Update PATH: | Update PATH: | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
Line 110: | Line 142: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | ||
+ | ==OpenJdk== | ||
It’s always good to setup OpenJDK as well, especially for the old versions as there is more updates than the ORACLE version. | It’s always good to setup OpenJDK as well, especially for the old versions as there is more updates than the ORACLE version. | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
Line 117: | Line 150: | ||
− | + | ==Choose default java version== | |
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
update-alternatives --config java | update-alternatives --config java | ||
Line 124: | Line 157: | ||
update-alternatives --config jar | update-alternatives --config jar | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
==Reminders== | ==Reminders== |
Revision as of 12:24, 26 January 2014
“Java” is one of the most popular and common language in this world.
It's everywhere, and you need some library to execute these programs.
Contents
Get Java
2 versions of Java are available:
- JRE as Java Runtime Environment. For end-users. Download JRE: https://java.com/getjava
- JDK as Java Devolpment Kit. For developers and application servers. The JDK includes the corresponding JRE. Download JDK: http://www.oracle.com/technetwork/java/javase/downloads/index.html
You need to install the JDK on your development station & servers.
Windows installation
1. Create a new environment variable
- Name: JAVA_HOME
- Value: path to your JDK installation (C:\Program Files\java\jdk1.7.0_45)
2. Update the PATH
- Add following sequence to the end of the PATH variable:
> %JAVA_HOME%\bin
3. Check installation
- Open a new terminal console [Run -> "cmd"]
- Run: java -version
Linux installation
On a server, I advise you to put the JDK instead of the JRE. Many services requires the JDK such as JMX.
While on Windows ORACLE java is almost the only JVM available, on Linux you can choose your JVM vendor: OpenJDK, ORACLE, .... I advise you to use the official ORACLE library, instead of the OpenSource OpenJDK due to stability issues and JavaFX2 compability.
ORACLE JVM automatic installation (ubuntu)
This is for Ubuntu based distributions only.
Add a new repository:
add-apt-repository ppa:webupd8team/java
apt-get update
Install ORACLE JDK packages:
apt-get install oracle-java7-installer oracle-jdk7-installer
This will download the latest JDK, install it automatically and set the new JVM as the default one.
To remove the repository:
apt-add-repository --remove ppa:webup8team/java
ORACLE JVM manual installation (debian)
Download JDK
You've to retrieve the JDK / JRE from the ORACLE website
- Through a graphical interface: http://www.oracle.com/technetwork/java/javase/downloads/index.html
- Using wget:
export ORACLE_JVM_URL='http://download.oracle.com/otn-pub/java/jdk/7u45-b18/jdk-7u45-linux-x64.tar.gz'
export ORACLE_JVM_FILENAME='jdk-linux-x64.tar.gz'
wget -c --no-cookies --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F" \
$ORACLE_JVM_URL --output-document=$ORACLE_JVM_FILENAME
You have to adjust the ORACLE_JVM_URL to the exact JVM you want to use.
Installation
- Get binaries
tar -xzvf $ORACLE_JVM_FILENAME
mv jdk1.7.* /usr/lib/jvm
cd /usr/lib/jvm
- Register new version
update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.7.0_45/bin/java 1065
update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.7.0_45/bin/javac 1065
update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/jdk1.7.0_45/bin/jar 1065
update-alternatives --install /usr/bin/javaws javaws /usr/lib/jvm/jdk1.7.0_45/bin/javaws 1065
You have to adjust the source folder /usr/lib/jvm/jdk1.7.0_45/bin/.
- Adjust symlink
rm /usr/lib/jvm/default-java
ln -s /usr/lib/jvm/jdk1.7.0_45/ /usr/lib/jvm/default-java
You have to adjust the source folder in LS command.
- Set system default version
update-alternatives --config java
update-alternatives --config javac
update-alternatives --config javaws
update-alternatives --config jar
- Check result
java -version
Environment variable JAVA_HOME
You need to add an environment variable JAVA_HOME, if it does not already exist:
- Debian
vim /etc/profile
- Ubuntu
vim /etc/environment
Add the following line:
export JAVA_HOME="/usr/lib/jvm/default-java"
Update PATH:
if [ "`id -u`" -eq 0 ]; then
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$JAVA_HOME/bin"
else
PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:$JAVA_HOME/bin"
fi
export PATH
OpenJdk
It’s always good to setup OpenJDK as well, especially for the old versions as there is more updates than the ORACLE version.
apt-get install openjdk-6-jdk openjdk-7-jdk
Choose default java version
update-alternatives --config java
update-alternatives --config javac
update-alternatives --config javaws
update-alternatives --config jar
Reminders
Don't forget to adjust the JAVA_HOME in all JAVA related services:
- Tomcat: /etc/default/tomcat7
- Eclipse IDE: eclipse.ini
- Jenkins
- etc.