GNU/Linux >> Belajar Linux >  >> Linux

Ubuntu:OpenJDK 8 - Tidak dapat menemukan paket

Saya mendapatkan OpenJDK 8 dari repositori resmi Debian, daripada beberapa PPA acak atau biner Oracle yang tidak bebas. Inilah cara saya melakukannya:

sudo apt-get install debian-keyring debian-archive-keyring

Buat /etc/apt/sources.list.d/debian-jessie-backports.list :

deb http://httpredir.debian.org/debian/ jessie-backports main

Buat /etc/apt/preferences.d/debian-jessie-backports :

Package: *
Pin: release o=Debian,a=jessie-backports
Pin-Priority: -200

Kemudian terakhir lakukan penginstalan:

sudo apt-get update
sudo apt-get -t jessie-backports install openjdk-8-jdk

sudo apt-get update
sudo apt-get  install openjdk-8-jdk

ini seharusnya berhasil


Seperti yang Anda lihat, saya hanya menginstal java 1.7 (pada mesin Ubuntu 14.04).

update-java-alternatives -l
java-1.7.0-openjdk-amd64 1071 /usr/lib/jvm/java-1.7.0-openjdk-amd64

Untuk menginstal Java 8, saya melakukannya,

sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-8-jdk

Setelah itu, sekarang saya memiliki java 7 dan 8,

update-java-alternatives -l
java-1.7.0-openjdk-amd64 1071 /usr/lib/jvm/java-1.7.0-openjdk-amd64
java-1.8.0-openjdk-amd64 1069 /usr/lib/jvm/java-1.8.0-openjdk-amd64

BONUS ADDED (cara beralih di antara versi yang berbeda)

  • jalankan perintah berikut dari terminal:

sudo update-alternatives --config java

There are 2 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                            Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1071      auto mode
  1            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1071      manual mode
* 2            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1069      manual mode

Press enter to keep the current choice[*], or type selection number:

Seperti yang Anda lihat, saya menjalankan jdk 8 terbuka. Untuk beralih ke jdk 7, tekan 1 dan tekan tombol Enter kunci. Lakukan hal yang sama untuk javac begitu juga dengan, sudo update-alternatives --config javac .

Periksa versi untuk mengonfirmasi perubahan:java -version dan javac -version .


PEMBARUAN :instalasi tanpa hak akses root di bawah

Saya menyarankan Anda untuk tidak menginstal paket secara manual di sistem ubuntu jika sudah ada repositori (semi-resmi) yang dapat menyelesaikan masalah Anda. Selanjutnya, gunakan Oracle JDK untuk pengembangan, hanya untuk menghindari masalah kompatibilitas (sangat sporadis) (saya sudah mencoba bertahun-tahun yang lalu, sekarang pasti lebih baik).

Tambahkan webupd8 repo ke sistem Anda:

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update

Instal versi jdk pilihan Anda (tersedia versi dari java-6 hingga java-9):

sudo apt-get install oracle-java8-installer

Anda juga dapat menginstal beberapa versi jdk, menggabungkan versi openjdk dan oracle. Kemudian Anda dapat menggunakan perintah update-java-alternatives untuk beralih di antara versi yang diinstal:

# list available jdk
update-java-alternatives --list

# use jdk7
sudo update-java-alternatives --set java-7-oracle

# use jdk8
sudo update-java-alternatives --set java-8-oracle

Persyaratan

Jika Anda mendapatkan add-apt-repository: command not found pastikan memiliki software-properties-common terpasang:

sudo apt-get install software-properties-common

Jika Anda menggunakan Ubuntu versi lama:

sudo apt-get install python-software-properties

Instalasi JDK tanpa hak akses root

Jika Anda tidak memiliki hak administrator pada mesin target Anda, pilihan paling sederhana adalah menggunakan sdkman untuk menginstal openjdk bersertifikat zulu:

curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"
sdk install java

CATATAN :sdkman memungkinkan untuk menginstal juga Oracle JDK resmi, meskipun itu bukan opsi default. Lihat versi yang tersedia dengan:

sdk ls java

Instal versi yang dipilih dengan:

sdk install java <version>

Misalnya:

sdk install java 9.0.1-oracle

Glosari perintah

  • sudo <command> [command_arguments] :jalankan perintah dengan hak superuser.

  • tambahkan-apt-repositori <PPA_id> :Ubuntu (seperti setiap turunan Debian dan secara umum setiap distribusi Linux) memiliki repositori utama paket yang menangani hal-hal seperti ketergantungan paket dan pemutakhiran. Di Ubuntu dimungkinkan untuk memperluas repositori utama menggunakan PPA (Arsip Paket Pribadi) yang biasanya berisi paket yang tidak tersedia di sistem (seperti oracle jdk) atau versi terbaru dari yang tersedia (contoh:LibreOffice 5 di LTS hanya tersedia melalui ini PPA).

  • apt-get [install|update|upgrade|purge|...] :ini adalah "the" command-line package handler yang digunakan untuk memanipulasi status dari setiap repositori pada sistem (menginstal/memperbarui/meningkatkan dapat dilihat sebagai perubahan status repositori saat ini).

Dalam kasus kami :dengan perintah sudo add-apt-repository ppa:webupd8team/java kami memberi tahu sistem bahwa pembaruan repositori berikutnya harus mengambil informasi paket juga dari repo webupd8.

Dengan sudo apt-get update kami benar-benar memperbarui repositori sistem (semua operasi ini memerlukan hak pengguna super, jadi kami menambahkan sudo ke perintah).

sudo apt-get install oracle-java8-installer

  • perbarui-java-alternatif (versi java khusus dari update-alternatives ):di Ubuntu beberapa paket menyediakan fungsionalitas yang sama (menjelajahi internet, mengkompilasi surat, mengedit file teks atau menyediakan executable java/javac...). Untuk memungkinkan sistem memilih alat favorit pengguna, diberikan mekanisme tugas tertentu menggunakan symlink di bawah /etc/alternatives/ digunakan. Coba perbarui jdk seperti yang ditunjukkan di atas (beralih antara Java 7 dan Java 8) dan lihat bagaimana mengubah output dari perintah ini:

    ls -l /etc/alternatives/java*

Dalam kasus kami :sudo update-java-alternatives --set java-8-oracle perbarui symlink di bawah /etc/alternatives untuk menunjuk ke executable Java-8-Oracle.

Ekstra:

  • pria <command> :mulai gunakan man untuk membaca bantuan yang ditulis dengan sangat baik dan mendetail pada (hampir) setiap perintah Shell dan opsinya (setiap perintah yang saya sebutkan dalam jawaban kecil ini memiliki halaman manual, coba man update-java-alternatives ).

  • apt-cache search <search_key> :meminta cache APT untuk mencari paket yang terkait dengan kunci_pencarian yang disediakan (bisa berupa nama paket atau beberapa kata dalam deskripsi paket).

  • apt-cache show <package> :memberikan informasi APT untuk paket tertentu (versi paket, terinstal atau tidak, deskripsi).


Linux
  1. Tidak Dapat Menginstal Mariadb Di Ubuntu 20.04?

  2. Menginstal Cuda 8 Di Ubuntu 16:Tidak Dapat Menemukan Paket Cuda?

  3. Cara Menginstal Docker di Ubuntu 22.04

  1. Instal Odoo 9 di Ubuntu 14.04

  2. Instal Zulip di Ubuntu

  3. Instal Qt di Ubuntu

  1. Cara Menginstal lokasi di Server Ubuntu

  2. Docker - Tidak dapat menemukan paket docker-engine

  3. Ubuntu E:Tidak dapat menemukan paket mysql