Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
Procedure for installing and setting Sun JDK Java on Default Amazon Linux AMI
# First verify the version of Java being used is not SunJSK.
java -version
# Get the latest Sun Java SDK from Oracle
# Rename the file downloaded, just to be nice
mv jdk-7u1-linux-i586.rpm\?e\=1320265424\&h\=916f87354faed15fe652d9f76d64c844 jdk-7u1-linux-i586.rpm
# Install Java
sudo rpm -i jdk-7u1-linux-i586.rpm
# Check if the default java version is set to sun jdk
java -version
# If not then lets create one more alternative for Java for Sun JDK
sudo /usr/sbin/alternatives --install /usr/bin/java java /usr/java/jdk1.7.0_01/bin/java 20000
# Set the SUN JDK as the default java
sudo /usr/sbin/alternatives --config java
# Verify if change in SDK was done.
java -version
Copy link

richddean commented Mar 2, 2012

Thanks. I have no idea why Amazon does not have simple instructions like this for installing the Sun JDK. Finding this saved me hours of frustration.

Copy link

rossjudson commented Mar 22, 2012

Yeah...thanks for this. I grabbed the link for the current version (7u3) from Oracle's site; identical otherwise.

Copy link

ScottEAdams commented May 16, 2012

You may find that it doesnt work directly with wget as oracle have the agree to license crap. If so, just download to your pc then cd into the folder where your key pair file is. Then
ssh-add your-key-pair.pem

Then cd back to where the file you downloaded and
scp jdk-7u4-linux-x64.rpm ec2-user@yourelastic-ip:

Take note that you have to have a destination folder on the end of the ip. The ':' puts it in the ec2 user home folder.

Copy link

ajtrichards commented Oct 30, 2012

You can download the Oracle version directly to you EC2 instance using the following:

wget --no-cookies --header "Cookie:;" _

All you need to do is change the download URL to the appropriate version you need. Obviously remove the ********'s on both sides

Copy link

dmartinsid commented Nov 22, 2012

Thanks man!

Copy link

xmariachi commented Dec 18, 2012

Thanks. Just to add, that even if alternatives --install is supposed to set the new JAVA_HOME too, it removed my JAVA_HOME settings. 7_10, on Dec 2012 Amazon Linux.

Copy link

starheight commented Feb 6, 2013

Really helpful. Installing Java on Amazon before this was a real pain.

Copy link

tdiesler commented Aug 22, 2013

For direct download from Oracle you can do this

wget --no-cookies --header "Cookie: gpw_e24=xxx;"

Copy link

royroblez commented Dec 12, 2013


Copy link

j-mcnally commented Feb 3, 2014

thank you!

Copy link

dopplesoldner commented Mar 5, 2014


Copy link

grnq commented May 20, 2014

You will need to add oraclelicense=accept-securebackup-cookie; to the cookie string for current versions.

Copy link

arikogan commented Jul 21, 2014

Very very useful. Thank you for the gist and the comments re the cookies.

Copy link

entireflow commented Nov 5, 2014

You can download JDK / JRE of desire version on EC2 (Linux) server instance from Oracle website using following steps
1.On your desktop - install Export cookie plug-in/add-on in Firefox browser. (Needs restart of Firefox browser)
2. Open oracle java download link
3. Accept License - (required for download)
4. Go to Tools -> Export Cookie option and store cookies.txt file and upload it to EC2 server instance.
5. execute wget command download JDK by supplying cookie
wget --load-cookies [directory-location]/cookies.txt

replace [directory-location] with path to uploaded cookies.txt file.

Copy link

shahidash commented Dec 23, 2014

get java directly
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie"

Copy link

philihp commented Jan 23, 2015

After following these instructions, I still had to set my JAVA_HOME, so don't forget to do that.

This is an issue, because I was compiling all of my classes using Java 8, however $JAVA_HOME was still pointing to the stock Java 7 shipped and was giving me the error Unsupported major.minor version 52.0 because of this.

Copy link

oporkka commented Sep 30, 2015

I had already Oracle JDK 6 on the server and tried to install Oracle JDK 7. I got error

file /etc/init.d/jexec from install of jdk-2000:1.7.0_79-fcs.x86_64 conflicts with file from package jdk-2000:1.6.0_45-fcs.x86_64

but could solve it by using rpm -Uvh instead (the instruction with these flags is from

Copy link

rimhoffd commented Dec 24, 2015

Make sure to use x64 (not i586 noted in original post) for AMI 2015-09 when downloading from Oracle website!

Copy link

theyuv commented Jan 19, 2016

If I would like to install a specific minor version of jdk do I have to use the procedure in this post?
Or can I also get specific minor versions (eg: from a repo (for example, when I call "yum install java-1.8.0" I think the jdk is installed from a repo, however it is done with the most up to date minor version (currently

Copy link

gregorydickson commented Oct 26, 2016

JDK 8:
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie"

Copy link

defjamuk commented Nov 24, 2016

JDK 8:
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment