Cara mengatur lintasan lingkungan Java di Ubuntu

164

Saya baru saja menginstal JDK di Ubuntu dengan sudo apt-get install openjdk-6-jdkperintah, setelah instalasi di mana bindirektori Java berada? Dan bagaimana saya bisa mengatur jalur lingkungan untuk direktori itu? Saya memiliki sedikit pengalaman dengan Ubuntu, adakah yang bisa memberikan saran atau menyarankan situs web yang bagus untuk referensi?

Ullas Prabhakar
sumber

Jawaban:

201

atur variabel lingkungan sebagai berikut

Edit file Path sistem / etc / profile

sudo gedit /etc/profile

Tambahkan baris berikut pada akhirnya

JAVA_HOME=/usr/lib/jvm/jdk1.7.0
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
export JAVA_HOME
export JRE_HOME
export PATH

Kemudian Logout dan Masuklah di ubuntu untuk menyiapkan jalur ...

Pratap Singh
sumber
19
mengapa mengekspor JRE_HOME?
whossname
3
Tidak berfungsi untuk saya dan versi sebelumnya tetap sebagai default. Saya mengubah urutan jalur export PATH=${JAVA_HOME}/bin:${PATH} dan versinya diperbarui. Saya pikir prioritas kiri ke kanan berfungsi di sini.
Ridhuvarshan
2
Sudah diselesaikan di sini stackoverflow.com/questions/24641536/...
user1420482
1
.bash_profile dan .bashrc khusus untuk bash, sedangkan .profile dibaca oleh banyak shell tanpa adanya file konfigurasi khusus shell mereka. / etc / bash_profile (fallback / etc / profile) dibaca sebelum .profile pengguna untuk konfigurasi seluruh sistem.
Ryan Augustine
Anda juga harus keluar dan masuk untuk perubahan agar berlaku untuk / etc / profile tetapi hanya menutup dan membuka terminal baru jika Anda mengubah ~ / .bashrc
Ryan Augustine
78

Java biasanya diinstal di /usr/java cari versi yang Anda miliki dan kemudian lakukan hal berikut:

Dengan asumsi Anda menggunakan bash (jika Anda baru memulai, saya sarankan bash di shell lain) Anda bisa mengetikkan bash untuk memulainya.

Edit ~/.bashrcfile Anda dan tambahkan jalur sebagai berikut:

untuk mis. vi~/.bashrc

masukkan baris berikut:

export JAVA_HOME=/usr/java/<your version of java>
export PATH=${PATH}:${JAVA_HOME}/bin

setelah Anda menyimpan perubahan, keluar dan mulai ulang bash Anda atau cukup ketik bash untuk memulai shell baru

Ketik exportuntuk memastikan jalurnya benar.

Ketik java -versionuntuk memastikan Java dapat diakses.

Vijay Agrawal
sumber
sempurna! Terima kasih. NB: Anda mungkin ingin menghapus openJDK default dari sistem Anda seperti yang muncul pertama kali di jalur global. Jadi setelah skrip di atas dimuat, Anda hanya akan menampilkan "javac" bukan java, karena openjk-jre default. ~ sudo apt-get remove openjdk- * ~
kholofelo Maloma
Saya punya masalah dengan itu, saya mencoba setiap metode untuk memperbarui java, tetapi masih waktu versi saya adalah jdk1.7 tapi saya mengatur jalan ke jdk1.8
Vonton
32

Ubuntu menginstal openjdk6 ke /usr/lib/jvm/java-6-openjdkpath. Jadi, Anda akan memiliki bin /usr/lib/jvm/java-6-openjdk/bin. Biasanya classpath diatur secara otomatis untuk java & executable terkait.

prajeesh kumar
sumber
23

Untuk mengatur JAVA_HOME / PATH untuk satu pengguna , Masuk ke akun Anda dan buka file .bash_profile

$ vi ~/.bash_profile

Tetapkan JAVA_HOME sebagai berikut menggunakan sintaks ekspor JAVA_HOME=<path-to-java>. Jika jalur Anda disetel ke /usr/java/jdk1.5.0_07/bin/java, setel sebagai berikut:

export JAVA_HOME=/usr/java/jdk1.5.0_07/bin/java

Tetapkan PATH sebagai berikut:

export PATH=$PATH:/usr/java/jdk1.5.0_07/bin

Jangan ragu untuk mengganti /usr/java/jdk1.5.0_07 sesuai pengaturan Anda. Simpan dan tutup file. Cukup keluar dan masuk kembali untuk melihat perubahan baru. Atau, ketikkan perintah berikut untuk segera mengaktifkan pengaturan jalur baru:

$ source ~/.bash_profile

ATAU

$ . ~/.bash_profile

Verifikasi pengaturan baru:

$ echo $JAVA_HOME
$ echo $PATH

Tip: Gunakan perintah berikut untuk mencari jalur yang tepat untuk menjalankan java di bawah UNIX / Linux:

$ which java

Harap perhatikan bahwa file ~ / .bashrc serupa, dengan pengecualian bahwa ~ / .bash_profile hanya berjalan untuk shell login Bash dan .bashrc berjalan untuk setiap shell Bash baru.

Untuk mengatur JAVA_HOME / PATH untuk semua pengguna , Anda perlu menyiapkan konfigurasi global dalam file /etc/profileATAU /etc/bash.bashrcuntuk semua pengguna:

# vi /etc/profile

Selanjutnya atur variabel PATH / JAVA_PATH sebagai berikut:

export PATH=$PATH:/usr/java/jdk1.5.0_07/bin
export PATH=$PATH:/usr/java/jdk1.5.0_07/bin

Simpan dan tutup file. Sekali lagi Anda perlu mengetik perintah berikut untuk segera mengaktifkan pengaturan jalur:

# source /etc/profile

ATAU

# . /etc/profile
Atul Arvind
sumber
1
Apakah Anda yakin seharusnya mengatur JAVA_HOME ke java binary?
Semua Pekerja Sangat Penting
8

jika Anda hanya menginstal openJDK, Anda harus memperbarui tautan Anda, karena Anda dapat memiliki beberapa instalasi OpenJDK.

sudo update-alternatives --config java

sesudah ini

$gedit ~/.bashrc

tambahkan baris berikut dalam file

JAVA_HOME=/usr/lib/jvm/YOUR_JAVA_VERSION export PATH=$PATH:$JAVA_HOME/bin export JAVA_HOME

Anda bisa mendapatkan versi java dengan

java -version
Loïch
sumber
7

Untuk mengatur ruang lingkup sistem Anda harus menggunakan

/ etc / file environmentsudo gedit /etc/environment

adalah lokasi di mana Anda dapat mendefinisikan variabel lingkungan apa pun. Itu dapat terlihat di seluruh cakupan sistem. Setelah variabel didefinisikan, sistem perlu di-restart.

CONTOH:

sudo gedit /etc/environment

Tambahkan seperti berikut:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
JAVA_HOME="/opt/jdk1.6.0_45/"

Inilah situs yang bisa Anda temukan lebih banyak: http://peesquare.com/blogs/environment-variable-setup-on-ubuntu/

Paramananda
sumber
Jika Anda memperbarui entri apa pun lakukan memuat ulang menggunakan source /etc/environmentperintah
Waleed Abdalmajeed
6

Seharusnya meletakkan java di path Anda, mungkin di / usr / bin / java. Cara termudah untuk menemukannya adalah dengan membuka istilah dan ketik "yang java".

Michael
sumber
6

Anda perlu mengatur variabel $ JAVA_HOME

Dalam kasus saya saat mengatur Maven, saya harus mengaturnya ke tempat JDK diinstal.

Pertama cari tahu di mana JAVA diinstal:

$ whereis java

java: / usr / bin / java / usr / share / java /usr/share/man/man1/java.1.gz

Sekarang gali lebih dalam-

$ ls -l /usr/bin/java

lrwxrwxrwx 1 root root 46 Agustus 25 2018 / etc / alternative / java -> / usr / lib / jvm / java-8-openjdk-amd64 / jre / bin / java Galilah lebih dalam:

$ ls -l /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java

-rwxr-xr-x 1 root root 6464 Mar 14 18:28 / usr / lib / jvm / java-8-openjdk-amd64 / jre / bin / java

Karena tidak dirujuk ke direktori lain, kami akan menggunakan ini.

Buka / etc / environment menggunakan nano

$ sudo nano /etc/environment

Tambahkan baris berikut

JAVA_HOME = / usr / lib / jvm / java-1.8.0-openjdk-amd64

ekspor JAVA_HOME

Muat ulang PATH menggunakan

$. /etc/environment

Sekarang,

$ echo $JAVA_HOME

Ini output Anda:

/usr/lib/jvm/java-1.8.0-openjdk-amd64

Sumber yang saya sebut:

https://askubuntu.com/a/175519

https://stackoverflow.com/a/23427862/6297483

Nithin Raja
sumber
4
  • Terminal terbuka ( Ctrl+ Alt+ t)
  • Tipe

    sudo gedit .bashrc 
  • Masukkan kata sandi pengguna ubuntu
  • Pergi ke baris terakhir file
  • Ketikkan kode di bawah ini di baris baru

    export JAVA_HOME=enter_java_path_here
    export PATH=$JAVA_HOME/bin:$PATH
    eg: export JAVA_HOME=/home/pranav/jdk1.8.0_131
        export PATH=$JAVA_HOME/bin:$PATH
  • Simpan file
  • Tipe

    source ~/.bashrc

    di terminal

  • Selesai
Pranav VR
sumber
4
  1. Perbarui bashrcfile untuk ditambahkanJAVA_HOME

    sudo nano ~/.bashrc

  2. Tambahkan JAVA_HOMEke bashrcfile.

    export JAVA_HOME=/usr/java/<your version of java>
    export PATH=${PATH}:${JAVA_HOME}/bin

  3. Pastikan Java dapat diakses

    java -version

  4. Dalam hal instalasi manual JDK, Jika Anda mendapatkan kesalahan seperti yang ditunjukkan di bawah ini

    Kesalahan terjadi selama inisialisasi VM
    java / lang / NoClassDefFoundError: java / lang / Object
    
  5. Jalankan perintah berikut di direktori JAVA_HOME / lib Anda:

    unpack200 -r -v -l "" tools.pack tools.jar

  6. Jalankan perintah berikut di JAVA_HOME / jre / lib Anda

    ../../bin/unpack200 rt.pack rt.jar ../../bin/unpack200 jsse.pack jsse.rar ../../bin/unpack200 charsets.pack charsets.jar

  7. Pastikan Java dapat diakses

    java -version

Vinit Solanki
sumber
4

Cara menginstal paket java:

Instal versi / versi java yang diinginkan menggunakan paket ubuntu resmi, yang dikelola menggunakan alternatif:
sudo apt install -y openjdk-8-jdk
atau / dan versi lain: sudo apt install -y openjdk-11-jdk

Jawaban di atas hanya benar ketika Anda hanya memiliki satu versi untuk semua perangkat lunak pada mesin Anda, dan Anda dapat melewati menggunakan pembaruan-alternatif. Jadi seseorang dapat dengan cepat meng-hardcode-nya di .bashrc atau tempat lain:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64
tetapi tidak sehat, karena nantinya Anda dapat mengubah versinya.

Cara yang benar untuk mengatur JAVA_HOME (dan opsional JAVA_SDK, JAVA_JRE)

Cara yang benar (dan wajib ketika Anda memiliki lebih dari satu), adalah untuk mendeteksi apa pembaruan menunjuk ke, dan selalu menggunakan pembaruan-alternatif untuk beralih versi aktif.

Berikut adalah saran untuk keduanya: hanya akun unix tertentu atau untuk semua akun (level mesin).

1. hanya untuk akun unix tertentu:

Gunakan ini jika Anda tidak memiliki izin untuk melakukannya di level mesin.

cat <<'EOF' >>~/.bashrc

export JAVA_HOME=$(update-alternatives --query java | grep Value | cut -d" " -f2 | sed 's!\(\/.*\)jre\(.*\)!\1!g')
export JDK_HOME=${JAVA_HOME}
export JRE_HOME=${JDK_HOME}/jre/

EOF

2. Untuk melakukannya di level mesin, dan untuk semua shell bourne, Anda perlu 2 langkah:

2.a

cat <<'EOF' | sudo tee /etc/profile.d/java_home_env.sh >/dev/null

export JAVA_HOME=$(update-alternatives --query java | grep Value | cut -d" " -f2 | sed 's!\(\/.*\)jre\(.*\)!\1!g')
export JDK_HOME=${JAVA_HOME}
export JRE_HOME=${JDK_HOME}/jre/

EOF

Karena shell Anda mungkin tidak diatur sebagai interaktif secara default, Anda mungkin ingin melakukan ini juga:
2.b

cat <<'EOF' | sudo tee -a /etc/bash.bashrc >/dev/null
if [ -d /etc/profile.d ]; then
  for i in /etc/profile.d/*.sh; do
    if [ -r $i ]; then
      . $i
    fi
  done
  unset i
fi
EOF

PS: Seharusnya tidak perlu memperbarui $ PATH, karena pembaruan-alternatif menangani tautan ke / usr / bin /.
Lebih lanjut tentang: https://manpages.ubuntu.com/manpages/trusty/man8/update-alternatives.8.html

ReSearchIT Eng
sumber
2

Biarkan saya Sederhanakan, unduh dulu JDK dari Situs Web Oracle: Tautan

2] Kemudian Ekstrak

3] Buat folder (jvm) di / usr / lib / ie / usr / lib / jvm

4] pindahkan folder yang diekstrak dari jdk ke / usr / lib / jvm /

* Catatan: gunakan terminal, sudo, perintah mv yaitu sudo mv

5] Buat file .sh di /etc/profile.d/ misalnya: /etc/profile.d/myenvvar.sh

6] Dalam jenis file .sh

export JAVA_HOME = / usr / lib / jvm / jdk1.7.0

export PATH = $ PATH: $ JAVA_HOME / bin

* Catatan: gunakan terminal, gedit dan sudo misalnya: sudo gedit myenvvar.sh

7] Matikan Komputer, setelah semua langkah ini dan Restart

8] Buka Terminal, dan ketik

versi java

9] Periksa output, lalu ketik

echo $ JAVA_HOME

10] Periksa hasilnya dan senang :)

Shingade Abhishek
sumber
JAVA_HOME saya diatur di /etc/profile.d/maven.sh. Terima kasih.
Fid
2

Langkah 1:

sudo gedit ~/.bash_profile

Langkah 2:

JAVA_HOME=/home/user/tool/jdk-8u201-linux-x64/jdk1.8.0_201
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
export JAVA_HOME
export JRE_HOME
export PATH

Step3:

source ~/.bash_profile
trí nguyễn
sumber
1

buka jdk setelah terinstal berada umumnya di / usr / lib / java-6-openjdk Seperti biasa Anda perlu mengatur JAVA_HOME, calsspath dan Path Di ubuntu 11.04 ada file lingkungan yang tersedia di / etc di mana Anda perlu mengatur semua tiga jalur. Dan kemudian Anda perlu me-restart sistem Anda agar perubahan diterapkan ..

Berikut adalah situs untuk membantu Anda menjelajahi http://aliolci.blogspot.com/2011/05/ubuntu-1104-set-new-environment.html

Raveesh Sharma
sumber
1

Yang harus Anda lakukan sekarang adalah untuk mengatur “JAVA_HOME”dan “PATH”lingkungan variabel dan kemudian Anda selesai. Masukkan perintah berikut untuk mengatur variabel lingkungan Anda. Pastikan variabel lingkungan Anda menunjuk ke instalasi JDK yang valid pada mesin Anda. Untuk Ubuntu 18.04, pathnya adalah/usr/lib/jvm/java-8-openjdk-amd64/

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

Untuk memeriksa apakah jalur JAVA_HOME Anda telah berhasil disimpan, masukkan perintah berikut untuk memeriksa.

echo $JAVA_HOME
Sai prateek
sumber
Ini hanya berfungsi untuk sesi terminal dan tempat lain
Jack
1

Saya memiliki Linux Lite 3.8 (Berbasis Ubuntu 16.04 LTS) dan perubahan jalur pada file berikut (dengan hak akses root) dengan restart telah membantu.

/etc/profile.d/jdk.sh
Etmos
sumber
0

Anda dapat menginstal java default Ubuntu (17.10) dari apt:

sudo apt install openjdk-8-jdk-headless 

Dan itu akan mengatur PATH untuk Anda, jika Anda perlu menginstal versi Java tertentu, Anda dapat mengikuti YouTube ini

T04435
sumber
0

Buka file /etc/environmentdengan editor teks. Tambahkan baris JAVA_HOME="[path to your java]" Simpan dan tutup lalu jalankansource /etc/environment

Firas Nomaan
sumber
0

Atur versi java dari daftar yang diinstal. Untuk melihat daftar versi yang diinstal jalankan perintah berikut:

update-java-alternatives --list

Kemudian atur versi java Anda sesuai dengan perintah berikut:

sudo update-java-alternatives --set /usr/lib/jvm/java-1.8.0-openjdk-amd64
Sandun Susantha
sumber
-1

Instalasi Oracle Java:

  1. Donwload tarball (file .tar) dari situs web Oracle
  2. unzip dengan sudo tar -xvpzf fileName -C / installation_folder_name
  3. ubah izin dan kepemilikan file
  4. tambahkan dua baris berikut di / etc / profile

export JAVA_HOME = / home / abu / Java / jdk1.8.0_45 / export PATH = $ JAVA_HOME / bin: $ PATH

  1. restart mesin dan periksa dengan java -version dan javac -version
Abu Sayed
sumber