I downloaded JDK and have many softwares which use requires it. For eg: for eclipse I'll copy the jdk in java folder in eclipse root directory. As a result I have many copies of JDK all over my system. Also dont know how to configure it for Sublime Text. Is is possible to install java just like in windows. I mean that I just open terminal and type java and it executes instead of changing directory everytime.
You could set your path variable but you really shouldn't be doing it like that.
Since you don't specify which version of Linux I'll be explaining it for Ubuntu and Arch Linux.
You should install openjdk packages with your package manager like so:
Ubuntu:
sudo apt-get install openjdk-8-jdk
Arch linux:
sudo pacman -S jdk8-openjdk
You can then use the following commands to change between those versions:
Ubuntu
sudo update-alternatives --config java
Arch Linux
archlinux-java set java-8-openjdk
You can even launch specific apps in specific versions but this would be too much to cover for now.
Setting the path variable regardless
To change your $PATH you have to either edit ~/.profile (or ~/.bash_profile) for each user or global $PATH setting in /etc/profile.
Simply append another path to it like so:
/usr/local/bin:/usr/local/sbin:/custom/path
You can also do:
PATH = $PATH:/custom/path
Multiple installation is never a good idea. You can have windows like setup but in *nix OS you have to follow different steps.
The preferred location for JAVA_HOME or /etc/environment. So Open /etc/environment in any text editor and add the following line:
JAVA_HOME="/usr/lib/your jdk path" (Use your java path)
If needed run else skip to next step source /etc/environment
See if done right?
echo $JAVA_HOME
Manual setup
Yes, just set PATH and JAVA_HOME suitably. For example, see this guide. This should give something like the following:
~/.bash_profile (or /etc/profile)
...
export JAVA_HOME=PATH_TO_JDK_ROOT/bin/java
export PATH=$PATH:PATH_TO_JDK_ROOT/bin
Linux distribution setup
Depending on your needs, you may otherwise opt to install your linux distribution JDK (using apt-get, yum, ...), thus avoiding manual steps to set the env vars.
Example: Ubuntu 16.04
To install the default JDK:
sudo apt-get install default-jdk
To install the Oracle JDK:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
To select the active Java version when there is more than one installed:
sudo update-alternatives --config java
If you want the appended value to be local to the script, do not prepend the export. Otherwise follow the example below which uses a search ability. I have appended to the PATH statement and want to export it so the PATH is known globally. If I invoke a second terminal, the if statement prevent the PATH environment variable from being double appended.
if [ ! "/home/mylogon/bin" == $PATH ];
then
export PATH=$PATH:/home/mylogon/bin:/home/mylogon/.local/bin"
fi
I have installed OpenJDK 7 and it runs well on my Ubuntu 14.04 machine. I want to add Java sources to my Eclipse. When I go to /usr/lib/jvm/java-7-openjdk-amd64 there is a symlink called src.zip but it's broken. How do I fix this? Do I have to manually download sources and add them?
You should do:
sudo apt-get install openjdk-7-source
then the source code will be downloaded under: "/usr/lib/jvm/openjdk-7".
The symlink:
src.zip -> ../openjdk-7/src.zip
should work now.
The answer from Alex is correct, as in how it should be. However, for OpenJDK 11 on Ubuntu 18.10 it appears that src.zip has been moved to lib/src.zip so the symlink cannot be resolved.
In addition to the
sudo apt install openjdk-11-source
command, run
echo "(cd /usr/lib/jvm/openjdk-11/; ln -s lib/src.zip)" | sudo bash
to create an additional symbolic link.
I downloaded sources from http://jdk7src.sourceforge.net/ and added them to eclilpse. It works fine now.
installing openjdk8 again worked for me in ubuntu 16.04
step1: sudo apt install openjdk-8-source
step2 : attach the source.zip under(Window->preferences-java->Installed JREs->edit java-8-open-Jdk->expand rt.jar->click on Source attachment and attach the src.zip under /usr/lib/jvm/java-8-openjdk-amd64).
I am trying to install webstorm, but when I try to run the *.sh file it gives me error of not having java environment available.
So I tried to look into the official documentation
But the steps to install the jdk didn't worked. I tried to locate java folder, but couldn't locate this directory /usr/bin/java
Please guide me how I can install webstorm now?
Java generally installs in /usr/lib/jvm/java-[major version]-openjdk-[arch]. Install a package such as openjdk-7-jdk and check in that location.
If you already have java installed, running which java will tell you the path of the java executable.
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
I haven't tried with java-8. Then:
sudo update-alternatives --java
And set auto-mode or java-7 (You might try with java-8)
First check the about java version
java -version
if its not returning you need to check your installed jdk
go to
cd /usr/lib/jvm
if you are finding something which start with java_XXXX
it means this is the only your jdk, and you can set JAVA_HOME as well path till bin folder by using export
I had a similar problem, during installation of eclipse (openjdk-7-jdk was required). I used
> sudo apt-get update
> sudo apt-get install ...
and it worked.
You should just install a JRE (to allow Java execution programs) and not a JDK (to develop Java programs).
No need a JDK to allow Webstorm to lauch.
On ubuntu : apt-get install default-jre
Have a nice day :)
David
I am trying to install Jenkins on ubuntu 11.04
I have installed Oracle Java
$:~$ java -version
java version "1.8.0_05"
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) Server VM (build 25.5-b02, mixed mode)
$:~$ javac -version
javac 1.8.0_05
$:~$
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/lib/jvm/jdk1.8.0_05/bin:/usr/lib/hadoop/hadoop-1.2.0/bin/:/usr/lib/pig/pig-0.12.0/bin:/usr/lib/hive/hive-0.11.0/bin:/usr/lib/hbase/hbase-0.94.8/bin
$:~$ echo $JAVA_HOME
/usr/lib/jvm/jdk1.8.0_05
When I try to install, I have some dependency issues..
$ sudo apt-get install jenkins
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
jenkins : Depends: daemon but it is not installable
Depends: default-jre-headless but it is not installable or
java-runtime-headless but it is not installable
E: Broken packages
to work install Jenkins they request Java versions greater than 1.8.0_1.
I got hte same error and I updated java to below version
java -version
java version "1.8.0_121"
Now jenkins installing without errors
Below link worked for 14.04 (hope it works for 11.04 too)
Install Java version in ubuntu
Try this:
sudo apt-get update
sudo apt-get remove default-jre default-jdk
sudo apt-get update
sudo apt-get install default-jre default-jdk
More about java on Ubuntu:
https://www.digitalocean.com/community/tutorials/how-to-install-java-on-ubuntu-with-apt-get
Steps to install jenkins and view in browser with IP:-
sudo apt update
sudo apt search jdk --to search jdk
sudo install openjdk-8-jre
sudo install openjdk-8-jre-headless
wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -
add below line in the file /etc/apt/sources.list:
sudo nano /etc/apt/sources.list
OR
sudo vi /etc/apt/sources.list
Add this below link at the end of editing document.
deb https://pkg.jenkins.io/debian binary/
Update your local package index
sudo apt-get update
Install jenkins now
sudo apt install jenkins
start jenkins service
sudo systemctl start jenkins
Enable the jenkins service
sudo systemctl enable jenkins
Now jenkins installed in your system. If are following these steps
you are good to go. heat localhost:8080 in the browser. because jenkins works on
8080 by default. you can change it's port to others.
Now if are using google cloud then there is one more step.
Firewall rule details (Add firewall rule to enable ip and tcp 8080 port)
That's that now if you open in browser http://<your-ip>:8080 jenkins will open and ask you
to view the password which give location on the ui.
For more detail please visit
https://www.jenkins.io/
Your installation of Java is likely the Oracle zip / tgz drop. By using it, the package manager (dpkg / apt in this case) is unaware it is installed.
Install the packaged java for the package manager to "know" that the right java is isntalled, or install the zip / tgz drop of jenkins.
In short, if you want managed Jenkins, use the managed Java, and if you don't want it to be managed (sometimes that's a good option if you don't want it to be upgraded), don't use the managed Jenkins or Java. (Keep in mind that unmanaged means you get none of the bug fixes until you manually update, but it also means you get no surprises until you manually update).
Seems like you should run
sudo apt-get update
sudo apt-get upgrade
And try again.
Anyway, Jenkins users quite frecuently complain about the installer not working.
Your life will be easier if you do it manually. It is quite easy and you have complete instructions all around the web: http://clavadetscher.dyndns.org/wiki/en/Install_and_upgrade_Jenkins_CI_Server_on_Ubuntu_12.04_and_Tomcat6
note: tomcat7 (if you are tempted) has given me some headaches with Jenkins. I always end up installing tomcat6.
Ended up solving this by running the following command:
sudo add-apt-repository universe
Pre-made script for install Jenkins and it will also print the access code to the console for the first login as well.
You should be able to copy and paste
cd ~/
git clone https://github.com/120GBSSD/jenkins-install-xenial.git
chmod +x ~/jenkins-install-xenial/Ubuntu:16.04-Jenkins.sh
./Ubuntu:16.04-Jenkins.sh
Note: This is an old question and the answers reflect the world as it was then. Modern Ubuntu distributions have OpenJDK available which can be installed with
sudo apt install default-jdk
I am trying to install the Java Development Kit (JDK) on Ubuntu Linux distribution, but I am unable to install it.
What are the steps to install it on Ubuntu?
Referring to Ask Ubuntu question How to set JAVA_HOME for OpenJDK?,
How to install Open JDK (Java developement kit) in Ubuntu (Linux)?
Open Terminal from Application Dash or press Ctrl+Alt+T
Update repository:
sudo add-apt-repository ppa:openjdk-r/ppa # only Ubuntu 17.4 and earlier
sudo apt update
Optional: To search available distributions of openjdk, use the following command:
apt search openjdk
Install the appropriate version with the following command:
sudo apt install openjdk-8-jdk
sudo apt install openjdk-8-source #this is optional, the jdk source code
For JAVA_HOME (Environment Variable) type command as shown below, in "Terminal" using your installation path...
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk
(Note: /usr/lib/jvm/java-8-openjdk is symbolically used here just for demostration. You should use your path as per your installation.)
For PATH (Environment Variable) type command as shown below, in Terminal:
export PATH=$PATH:$JAVA_HOME/bin
To check your installation:
java -version
The following used to work before the Oracle Java license changes in early 2019.
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
The PPA is discontinued, until the author finds a workaround for the license issues.
You can install Oracle's JDK 1.7 fairly easily too; as an example this is how to install JDK 1.7.0_13;
Download the JDK from Oracle's site. The download to the newest version is always linked from http://java.oracle.com.
As root, do;
cd /usr/local
tar xzf <the file you just downloaded>
As your normal user, add or change these two lines in your ~/.profile to point to the installation;
export JAVA_HOME=/usr/local/jdk1.7.0_13
export PATH=$PATH:$JAVA_HOME/bin
If it's an update, you may also want to remove the old java installation directory in /usr/local.
Log out and in again (or do . ~/.profile), and everything should just work.
The downside with Oracle's JDK is that it won't update with the rest of your system like OpenJDK will, so I'd mostly consider it if you're running programs that require it.
In case you have already downloaded the ZIP file follow these steps.
Run the following command to unzip your file.
tar -xvf ~/Downloads/jdk-7u3-linux-i586.tar.gz
sudo mkdir -p /usr/lib/jvm/jdk1.7.0
sudo mv jdk1.7.0_03/* /usr/lib/jvm/jdk1.7.0/
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0/bin/java" 1
sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.7.0/bin/javac" 1
sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/jdk1.7.0/bin/javaws" 1
After installation is complete, set environment variables as follows.
Edit the system path in file /etc/profile:
sudo gedit /etc/profile
Add the following lines at the end.
JAVA_HOME=/usr/lib/jvm/jdk1.7.0
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
export JAVA_HOME
export PATH
Source: http://javaandme.com/
Note: WebUpd8 team's PPA has been discontinued with effective from April 16, 2019. Thus this PPA doesn't have any Java files. More information can be found on PPA's page on Launchpad. Hence the below method no longer works and exists because of historical reasons.
If you want to install the latest JDK 1.8, use the webupd8team PPA.
Add the repository in your system:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
You can now install Oracle Java 8 using the following command:
sudo apt-get install oracle-java8-installer
This ppa repository also provides a package to set environment variables automatically. Just type:
sudo apt-get install oracle-java8-set-default
OpenJDK is OK for the most cases, but Oracle JDK can be required for some bank client applications (my case) - I can't use OpenJDK.
I'm surprised that I don't see any answer with the default method (repository without external PPAs) in Ubuntu 12.10+ for Oracle's JDK - I will try to describe it.
Install JavaPackage:
sudo apt-get install java-package
Download Oracle JDK from Oracle downloads page
Make a Debian package from the downloaded .tar.gz archive:
make-jpkg jdk-YOUR_VERSION-linux-PLATFORM.tar.gz
This command will produce a .deb package.
Install the package in your favourite way (for example, sudo dpkg -i oracle-java8-jdk_8u40_amd64.deb)
It's the officially supported way from Debian developers for installing Oracle JDK, and I suppose it's very simple.
Note: WebUpd8 team's PPA has been discontinued with effective from April 16, 2019. Thus this PPA doesn't have any Java files. More information can be found on PPA's page on Launchpad. Hence the below method no longer works and exists because of historical reasons.
Installing Java 8 on Ubuntu
First you need to add webupd8team Java PPA repository in your system and install Oracle Java 8 using following set of commands.
$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get install oracle-java8-installer
Verify Installed Java Version
After successfully installing Oracle Java using the above steps, verify the installed version using the following command.
$ java -version
java version "1.8.0_77"
Java(TM) SE Runtime Environment (build 1.8.0_77-b03)
Java HotSpot(TM) 64-Bit Server VM (build 25.77-b03, mixed mode)
###Configuring the Java environment
In Webupd8 ppa repository also providing a package to set environment variables, Install this package using following command.
$ sudo apt-get install oracle-java8-set-default
Reference
Simply run:
sudo apt-get install default-jdk
Wiki from Ubuntu website:
For Ubuntu 10.04 LTS, the sun-java6 packages have been dropped from the Multiverse section of the Ubuntu archive. It is recommended that you use openjdk-6 instead.
If you can not switch from the proprietary Sun JDK/JRE to OpenJDK, you can install sun-java6 packages from the Canonical Partner Repository. You can configure your system to use this repository via command-line:
sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"
sudo apt-get update
sudo apt-get install sun-java6-jre sun-java6-plugin
sudo update-alternatives --config java
For Ubuntu 10.10, the sun-java6 packages have been dropped from the Multiverse section of the Ubuntu archive. It is recommended that you use openjdk-6 instead.
If you can not switch from the proprietary Sun JDK/JRE to OpenJDK, you can install sun-java6 packages from the Canonical Partner Repository. You can configure your system to use this repository via command-line:
sudo add-apt-repository "deb http://archive.canonical.com/ maverick partner"
sudo apt-get update
sudo apt-get install sun-java6-jre sun-java6-plugin
sudo update-alternatives --config java
Installed in ubuntu 18.04
My workaround was,
$ sudo apt update
Install OpenJDK 8:
$ sudo apt install openjdk-8-jdk
Verify the Java installation by running the following command which will print the Java version:
$ java -version
The output should look like this:
Output:
openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-8u191-b12-2ubuntu0.18.04.1-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)
Using a PPA (Obsolete)
Note: WebUpd8 team's PPA has been discontinued with effective from April 16, 2019. Thus this PPA doesn't have any Java files. More information can be found on PPA's page on Launchpad. Hence the below method no longer works and exists because of historical reasons.
You can use WebUpd8 PPA (this will download the required files from Oracle and install JDK 8):
sudo apt-add-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
Are PPA's safe to add to my system and what are some “red flags” to watch out for?
Also ensure your JAVA_HOME variable has been set to:
/usr/lib/jvm/java-8-oracle
Manual install
The tar.gz provided by Oracle don't have an actual installation process. You just extract those files to a location you want and add them to your path. So the process is the following:
Download a .tar.gz from Oracle (here I will be using jdk-8u20-linux-x64.tar.gz);
Extract it to somewhere;
Move the extracted folder to /usr/lib/jvm. This is not required but it is the place where Java runtime software is installed
sudo mv /path/to/jdk1.8.0_20 /usr/lib/jvm/oracle_jdk8
Create a file /etc/profile.d/oraclejdk.sh with the following content (adapt the paths to reflect the path where you stored your JDK):
export J2SDKDIR=/usr/lib/jvm/oracle_jdk8
export J2REDIR=/usr/lib/jvm/oracle_jdk8/jre
export PATH=$PATH:/usr/lib/jvm/oracle_jdk8/bin:/usr/lib/jvm/oracle_jdk8/db/bin:/usr/lib/jvm/oracle_jdk8/jre/bin
export JAVA_HOME=/usr/lib/jvm/oracle_jdk8
export DERBY_HOME=/usr/lib/jvm/oracle_jdk8/db
Done! Those paths will only be recognized after you logout or restart, so if you want to use them right away run source /etc/profile.d/oraclejdk.sh.
In Ubuntu 18.04, We can install java like a normal package without using an external repository
Just run this command
sudo apt install openjdk-8-jdk
You can use the sudo apt-get install default-jdk terminal command to install the default JDK version.
Before installing Java, type the sudo apt-get update terminal command and then type the install terminal command. You can get more information from here.
Have a look at OpenJDK. It is the standard JVM implementation on Linux.
The best is to install default Java until a specific Java version is not required.
Before this, execute java -version to check if Java is not already installed.
sudo apt-get update
sudo apt-get install default-jre
sudo apt-get install default-jdk
That is everything that is needed to install Java.
I recommend JavaPackage.
It's very simple. You just need to follow the instructions to create a .deb package from the Oracle tar.gz file.
You can install via apt-get:
sudo add-apt-repository ppa:linuxuprising/java
sudo apt-get update
sudo apt-get install oracle-java11-installer
After, do not forget to check the version:
java -version
sun-java6-jdk is a virtual package provided by oracle-java8-installer or oracle-java7-installer or oracle-java7-installer.
sudo apt-get install oracle-java8-installer
will give you sun-java6-jdk.
I have successfully installed JDK 10 on Ubuntu 18.04 LTS following this video.
I am copying the excerpt from the description of the video.
Just open the terminal and give these commands :
For Java Installation (PPA)
sudo add-apt-repository ppa:linuxuprising/java
sudo apt-get update
sudo apt-get install oracle-java10-installer
For setting up environment variables (make java10 default)
sudo apt-get install oracle-java10-set-default
The same procedure can be followed on Ubuntu 16.04, Linux Mint, Debian and other related Linux systems to install JDK 10.
You can use SDKMan,
curl -s "https://get.sdkman.io" | bash
source "~/.sdkman/bin/sdkman-init.sh"
sdk install java
If you want to install Oracle JDK, you can use this automated script that does all the work for you.
There are detailed instructions how to use it on the author's blog.
Installing Oracle's Java JDK requires you to accept the Oracle license before the installation begins. This is only required once. If for some reason you need the installation to be automated, you can run the following commands to install without user interaction, useful for an automatic script for example.
sudo add-apt-repository -y ppa:webupd8team/java
sudo apt-get update
echo debconf shared/accepted-oracle-license-v1-1 select true | sudo debconf-set-selections
echo debconf shared/accepted-oracle-license-v1-1 seen true | sudo debconf-set-selections
sudo apt-get -y install oracle-java8-installer
java -version
Try to use SDKMAN! package manager - https://sdkman.io/install
Now it's the easiest way to install many JVM-based SDKs, tools and frameworks on any Linux distribution.
Upon installation, run the following command to see all available Java distributions:
sdk list java
Select the distribution that you need and install it:
sdk install java <version>
Install the appropriate version of OpenJDK
JAVA_VERSION=8
sudo add-apt-repository -y ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get -qq install -y openjdk-$JAVA_VERSION-jdk
Set Environment Variables in /etc/profile.d/jdk.sh
JAVA_HOME=/usr/lib/jvm/java-$JAVA_VERSION-openjdk-amd64
echo "export JAVA_HOME=$JAVA_HOME" | sudo tee -a /etc/profile.d/jdk.sh
echo "export J2SDKDIR=$JAVA_HOME" | sudo tee -a /etc/profile.d/jdk.sh
echo "export J2REDIR=$JAVA_HOME/jre" | sudo tee -a /etc/profile.d/jdk.sh
echo "export PATH=$PATH:$JAVA_HOME/bin:$J2REDIR/bin" | sudo tee -a /etc/profile.d/jdk.sh
Check your installation
/bin/bash /etc/profile.d/jdk.sh
java -version
echo $JAVA_HOME
echo $J2REDIR
echo $PATH
Step 01: Download JDK
Download the JDK of required version from oracle official website :
[Oracle website to download JDK]: https://www.oracle.com/in/java/technologies/javase-downloads.html
e.i - jdk-11.0.12_linux-x64_bin.tar.gz
Step 02: Installation:
a) Extract the downloaded files using following command
sudo -tar -vzxf jdk-11.0.12_linux-x64_bin.tar.gz
b) Create a directory of name java inside usr/lib directory
mkdir java
c) Move the extracted jdk-11.0.12 directory inside the new created directory java
sudo mv jdk-11.0.12 /usr/lib/java
Step 03:
a) Execute following commands one by one
sudo update-alternative -install /usr/lib/java java /usr/lib/java/jdk-11.0.12/bin/java 1
sudo update-alternative -install /usr/lib/javac javac /usr/lib/java/jdk-11.0.12/bin/javac 1
Step 04: installation varification :
Verify the installation by using following commands
java --version
javac --version
You can use oraji. It can install/uninstall both JDK or JRE from oracle java (.tar.gz).
To install run sudo oraji '/path/to/the/jdk_or_jre_archive'
To uninstall run oraji -u and confirm the version number.
I had the same problem and none of the comments worked for me. Finally, I noticed that I disabled my updates. When I reactivate it, so sudo apt-get update worked correctly and the issue was solved.
(update in system settings> software and updates>updates tab
here I ticked two first option of important update and recommended updates).
Try this in case you do not want to install OpenJDK: JDK Source Installer for Ubuntu
In Ubuntu1604 I faced "No installation candidate error". Following below steps helped me install.
-sudo apt-get update
-sudo apt-get upgrade
-apt-get install software-properties-common
-sudo add-apt-repository ppa:webupd8team/java
-apt-get update
-sudo apt install oracle-java8-installer
Over Debian you can try
apt-get install default-jdk