Cara mengatur versi Java default


8

Saya telah menggunakan Java 6 pada Ubuntu 11.10, tetapi sekarang saya ingin memperbarui ke versi 7. Saya telah menginstal versi 7 melalui PPA seperti dijelaskan di sini . Jika saya lari

sudo update-alternatives --config java

Saya mendapatkan output berikut:

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

  Selection    Path                                     Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-7-oracle/jre/bin/java   64        auto mode
  1            /usr/lib/jvm/java-6-sun/jre/bin/java      63        manual mode
* 2            /usr/lib/jvm/java-7-oracle/jre/bin/java   64        manual mode

Demikian pula, jika saya menjalankan:

sudo update-alternatives --config javac

Saya mendapatkan output:

  Selection    Path                                  Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-7-oracle/bin/javac   64        auto mode
  1            /usr/lib/jvm/java-6-sun/bin/javac      63        manual mode
* 2            /usr/lib/jvm/java-7-oracle/bin/javac   64        manual mode

Jadi sepertinya versi 7 sudah default. Tetapi jika saya menjalankan keduanya

java -version

atau

javac -version

Output menunjukkan bahwa versi 6 masih standar. Bagaimana saya bisa mengatur default ke versi 7?


Lihatlah Java
Mitch

@Mitch terima kasih, tetapi hanya mengatakan untuk menggunakan update-alternatives, yang sudah saya coba
DONal

Apakah Anda sudo apt-get install oracle-java7-set-defaultdan reboot ?
Eliran Malka

1
FYI, 11.10 adalah Akhir Kehidupan.
Thomas Ward

Jawaban:


4

Sesuai jawaban ini: Bagaimana cara mengatur versi Java default?

Coba sediakan jalur eksplisit bersama dengan update-alternatives --installpertama, lalu jalankan update-alternativesuntuk membuat pilihan Anda:

sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/java-7-oracle/jre/bin/java" 1

sudo update-alternatives --config java

sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/java-7-oracle/bin/javac" 1

sudo update-alternatives --config javac


1

Saya memiliki masalah yang sama. Saya telah menginstal sun jdk6. Setelah

    sudo update-alternatives --config java
    sudo update-alternatives --config javac
    sudo update-alternatives --config javaws

restart diperlukan untuk saya. Daripada berhasil.

Sunting: Saya menyadari itu tidak cukup untuk melakukan langkah-langkah di atas.

Saya juga harus mengedit variabel lingkungan:

    sudo nano /etc/environment

Dan tambahkan (versi java yang berbeda akan membutuhkan string yang berbeda):

    JAVA_HOME="/usr/lib/jvm/java-7-openjdk-amd64"

0

masukkan nomor yang mengidentifikasi jalur yang Anda inginkan dan tekan enter. dalam hal ini masukkan 1.

akhirnya, cobalah untuk menguji versinya java -version


Saya ingin versi 7, bukan 6. Output yang update-alternativesmenunjukkan bahwa saya sudah menggunakan versi 7, tetapi java -versionmenunjukkan bahwa saya masih menggunakan versi 6.
Dónal

0

Saya kira biner java Anda menunjuk ke suatu tempat selain /etc/alternatives/java.

Periksa output dari: type java

Apa katanya /usr/bin/java? Jika demikian, periksa apakah itu menunjuk dengan benar ke alternatif:

ls -l /usr/bin/javaharus menunjukkannya menunjuk /etc/alternatives/java.

Terakhir mengkonfirmasi bahwa /etc/alternatives/javadirinya menunjuk ke java-7:
ls -l /etc/alternatives/java.

Perintah pembaruan-alternatif hanya menyesuaikan yang terakhir dan mengasumsikan bahwa titik default /usr/bin/javayang pada gilirannya ditautkan dengan benar /etc/alternatives/java.


0

Saya mencoba hampir setiap metode yang tercantum di atas, tetapi masih menemukan java -version mencetak versi yang salah sementara ls -al /etc/alternatives/javasudah menunjuk ke yang benar.

Jadi saya jalankan: which java dan menemukan bahwa hasilnya menunjukkan bahwa saya menggunakan java dari /usr/local/jdk_xxx/bin/java, kemudian saya menghapus folder ini dan me-restart terminal. Sekarang java berfungsi dengan baik.

Semoga ini bisa membantu orang lain.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.