Bagaimana cara menginstal OpenJDK 11 di Windows?

269

Di masa lalu, Oracle biasa menerbitkan installer yang dapat dieksekusi untuk Windows yang akan:

  • Buka paket file
  • Tambahkan kunci registri yang menunjukkan versi dan jalur yang diinstal
  • Tambahkan JRE ke PATH sistem
  • Daftarkan sebuah uninstaller dengan Windows.

Pada Java 11, Oracle versi gratis Java ( Oracle OpenJDK ) tampaknya tidak menyertakan installer. Ini hanya file zip yang berisi binari.

Bagaimana kita menginstal OpenJDK 11 pada Windows karena integrasi tersebut tidak ada lagi? Bukankah itu perlu?

Gili
sumber
1
Mengubah registri tidak pernah benar-benar diperlukan. Dan ketika tidak memanipulasi sistem, Anda juga tidak perlu uninstaller.
Holger
1
@Gili menggunakan variabel lingkungan JAVA_HOME atau melalui jalur langsung dalam konfigurasi seperti IntelliJ IDEa, kan?
Mikhail Kholodkov
13
Ada ojdkbuild proyek komunitas yang menyediakan installer Windows untuk OpenJDK. JDK 11 belum tersedia di sana tetapi saya harap kami akan segera mendapatkannya.
ZhekaKozlov
1
@Gili wiki.eclipse.org/FAQ_How_do_I_run_Eclipse%3F#Find_the_JVM perhatikan bagaimana registri tidak muncul di mana saja ...
Holger
1
@Robert yah, tanpa plugin browser, panel kontrol, alat pembaruan otomatis, atau crapware toolbar ask, tidak ada begitu banyak yang tersisa untuk diinstal.
Holger

Jawaban:

339
  1. Ekstrak file zip ke dalam folder, misalnya C:\Program Files\Java\dan itu akan membuat jdk-11folder (di mana folder bin adalah sub-folder langsung). Anda mungkin memerlukan hak Administrator untuk mengekstrak file zip ke lokasi ini.

  2. Tetapkan PATH:

    • Pilih Control Panel dan kemudian System.
    • Klik Lanjut dan kemudian Variabel Lingkungan.
    • Tambahkan lokasi folder bin dari instalasi JDK ke variabel PATH dalam Variabel Sistem.
    • Berikut ini adalah nilai khas untuk variabel PATH: C:\WINDOWS\system32;C:\WINDOWS;"C:\Program Files\Java\jdk-11\bin"
  3. Setel JAVA_HOME:

    • Di bawah Variabel Sistem, klik Baru.
    • Masukkan nama variabel sebagai JAVA_HOME.
    • Masukkan nilai variabel sebagai jalur instalasi JDK (tanpa binsub-folder).
    • Klik OK.
    • Klik Terapkan Perubahan.
  4. Konfigurasikan JDK di IDE Anda (mis. IntelliJ atau Eclipse).

Anda sudah siap.

Untuk melihat apakah itu berhasil, buka Command Prompt dan ketik java -versiondan lihat apakah ia mencetak JDK Anda yang baru diinstal.

Jika Anda ingin menghapus penginstalan - batalkan saja langkah-langkah di atas.

Catatan: Anda juga dapat menunjuk JAVA_HOMEke folder instalasi JDK Anda dan kemudian mengatur PATHvariabel ke %JAVA_HOME%\bin. Jadi, ketika Anda ingin mengubah JDK Anda hanya mengubah JAVA_HOMEvariabel dan biarkan PATHapa adanya.

Lior Bar-On
sumber
9
Jangan lupa entri registri, yang misalnya digunakan oleh Launch4j untuk menemukan jre / jdk yang diinstal.
Robert
2
@Lior: Ini hanya satu program yang saya tahu yang menggunakan entri registri. Mungkin ada lusinan atau ratusan program lain yang menggunakan entri registri ini juga.
Robert
4
Mungkin memang demikian, tetapi: a. Saya bekerja dengan Java sejak ver 1.1 tanpa pengaturan registri - jadi itu bukan keharusan. b: registry windows umumnya dianggap sebagai mekanisme untuk menghindari (misalnya blog.codinghorror.com/was-the-windows-registry-a-good-idea ) - maka saya tidak berpikir itu harus digunakan, jika tidak secara khusus dibutuhkan. misalnya - kesalahan menetapkan nilai di dalamnya dapat menyebabkan kesalahan sulit dipulihkan.
Lior Bar-On
25
> Anda dapat mengarahkan JAVA_HOME ke folder tempat Anda memiliki beberapa instalasi JDK . Ini sepenuhnya salah. Banyak program dan skrip mengasumsikan JAVA_HOME poin ke instalasi java default (jdk atau jre) dan mereka mencari binari di bawah "% JAVA_HOME% \ bin". Jadi Anda TIDAK BISA menunjuk JAVA_HOME ke folder dengan beberapa instalasi jdk. Sebagai gantinya, Anda dapat menambahkan ke Path nilai "% JAVA_HOME% \ bin;" dan kemudian (ketika JDK baru diinstal) Anda dapat memperbarui JAVA_HOME saja
kool79
2
@sarkasronie Lihat kode sumber launch4j: sourceforge.net/p/launch4j/git/ci/Release_launch4j-3_12/tree/… (di bawah HKEY_LOCAL_MACHINE)
Robert
142

AdoptOpenJDK adalah situs web baru yang diselenggarakan oleh komunitas java . Anda dapat menemukan .msi installer untuk OpenJDK 8 hingga 14 di sana, yang akan melakukan semua hal yang tercantum dalam pertanyaan (Membongkar, kunci registri, memperbarui variabel PATH (dan JAVA_HOME), uninstaller ...).

Pimgd
sumber
5
Meskipun jawaban yang diterima benar, ini adalah cara yang jauh lebih mudah untuk menginstal versi JDK / JRE
optevo
21

Dari komentar oleh @ZhekaKozlov: ojdkbuild memiliki build OpenJDK (saat ini 8 dan 11) untuk Windows ( zipdan msi).

Martin Schröder
sumber
3
Bagi saya build tersebut tidak mengatur variabel PATH dengan benar. Di sewa saya tidak bisa mengeluarkan java -versiondan mendapatkan hasil yang diinginkan.
hannes101
1
Saya tidak dapat menemukan OpenJDK msi. Saya akan membuat skrip dan membagikannya dalam jawaban hari ini yang mengekstrak dan menetapkan PATH dan JAVA_HOME untuk mesin.
vezenkov
1
@vezenkov: Perbarui jawabannya di sini (ini adalah wiki komunitas karena suatu alasan) dan / atau buka masalah dengan proyek ini.
Martin Schröder
Untuk menambah jawaban yang diterima jika Anda memutakhirkan dari versi sebelumnya saya bahkan harus me-restart server untuk melihat versi openjdk diperbarui pada baris perintah.
desiguy
21

Gunakan manajer paket Chocolatey . Ini adalah alat baris perintah yang mirip dengan npm. Setelah Anda menginstalnya, gunakan

choco install openjdk

di prompt perintah yang ditinggikan untuk menginstal OpenJDK.

Untuk memperbarui versi yang diinstal ke versi terbaru, ketik

choco upgrade openjdk

Cukup mudah digunakan dan sangat membantu untuk meningkatkan ke versi terbaru. Tidak ada manual mengutak-atik variabel lingkungan jalur.

Tobias
sumber
3
Perhatikan bahwa ini akan menginstal versi terbaru: openjdk-12.0.2_windows-x64
Vadzim
jika Anda menginstal versi java lainnya, Anda mungkin ingin memeriksa variabel path dan menghapus / memodifikasi yang lama.
Ketu
1
@Vadzim choco menginstal openjdk11 pada hari ini tanpa menyebutkan versi, itu menginstal openjdk-13 dan hanya untuk dicatat, itu akan menggunakan AdoptOpenJDK seperti pada jawaban lain
FIV
1

Anda dapat menggunakan Amazon Corretto . Ini gratis untuk menggunakan distribusi OpenJDK multi platform, siap-produksi. Itu datang dengan dukungan jangka panjang yang akan mencakup peningkatan kinerja dan perbaikan keamanan. Periksa instruksi instalasi di sini .

Anda juga dapat memeriksa Zulu dari Azul .

Satu hal lagi yang ingin saya soroti di sini adalah Amazon Corretto dan Zulu adalah TCK Compliant. Anda dapat melihat perbandingan pembuatan OpenJDK di sini dan di sini .

Swapnil
sumber
-3

Uninstaller Oracle Java tidak menghapus semua file.
Periksa apakah "C: \ ProgramData \ Oracle" ada, ada beberapa file java di subdirektori. (mis: java.exe, javaw.exe)
Hapus untuk mencegah eksekusi file java yang salah.

craftwar
sumber