Làm cách nào tôi có thể cài đặt Java JDK 6/7/8 hoặc JRE độc quyền của Sun / Oracle?


559

Tôi muốn cài đặt JRE của Oracle và cập nhật lên phiên bản mới nhất với Trình cập nhật phần mềm khi chúng phát hành. Có gói Ubuntu nào được cung cấp bởi Canonical hay Oracle không?

Trước khi phát hành Java 7, tôi đã làm theo cách này để cài đặt Java 6 .

Nhưng nó không hoạt động cho Java 7 . Không có gói sun-java7-xxx. Làm thế nào bạn có thể cài đặt Java 7 ?


11
Tôi cũng muốn chỉ ra rằng sử dụng OpenJDK không chỉ là một giải pháp thay thế khả thi: đó cũng là cách triển khai tham khảo .
nickguletskii

11
openJdk không được hỗ trợ bởi các applet ngân hàng hoặc phần mềm khác. ví dụ: Studio Aptana
Elzo Valugi

4
liên kết đến "cách này" dường như tiết lộ ... không có mô tả về một cách?
rogerdpack

@ElzoValugi Tôi nghĩ rằng bạn có thể cần Trà đá để sử dụng các applet ngân hàng. Nó dựa trên OpenJDK.
GKFX

1
@GKFX không, đối với ngân hàng cụ thể này, IcedTea không hoạt động và ngân hàng chỉ hỗ trợ Java của Oracle. Trong khi đó họ bỏ sử dụng Java và tôi nghĩ đó là một quyết định sáng suốt.
Elzo Valugi

Câu trả lời:


881

Có một câu trả lời tương tự về cách cài đặt JRE 7.

Cài đặt Java JDK

Cách thủ công

  • Tải xuống "tệp nhị phân nén" 32 bit hoặc 64 bit của Linux - tệp này có phần mở rộng tệp ".tar.gz".

  • Giải nén nó

    tar -xvf jdk-8-linux-i586.tar.gz (32-bit)

    tar -xvf jdk-8-linux-x64.tar.gz (64-bit)

    Gói JDK 8 được trích xuất vào ./jdk1.8.0thư mục. Lưu ý: Kiểm tra cẩn thận tên thư mục này vì Oracle dường như thỉnh thoảng thay đổi điều này với mỗi bản cập nhật.

  • Bây giờ di chuyển thư mục JDK 8 sang /usr/lib

    sudo mkdir -p / usr / lib / jvm
    sudo mv ./jdk1.8.0 / usr / lib / jvm /
    
  • Bây giờ chạy

    sudo update-thay thế - cài đặt "/ usr / bin / java" "java" "/usr/lib/jvm/jdk1.8.0/bin/java" 1
    sudo update-thay thế - cài đặt "/ usr / bin / javac" "javac" "/usr/lib/jvm/jdk1.8.0/bin/javac" 1
    sudo update-thay thế --install "/ usr / bin / javaws" "javaws" "/usr/lib/jvm/jdk1.8.0/bin/javaws" 1
    

    Điều này sẽ gán cho Oracle JDK mức độ ưu tiên là 1, có nghĩa là việc cài đặt các JDK khác sẽ thay thế nó làm mặc định . Hãy chắc chắn sử dụng mức ưu tiên cao hơn nếu bạn muốn Oracle JDK giữ nguyên mặc định.

  • Sửa quyền sở hữu tệp và quyền của các tệp thi hành:

    sudo chmod a + x / usr / bin / java
    sudo chmod a + x / usr / bin / javac
    sudo chmod a + x / usr / bin / javaws
    sudo chown -R root: root /usr/lib/jvm/jdk1.8.0
    

    NB: Hãy nhớ - Java JDK có nhiều tệp thực thi hơn mà bạn có thể cài đặt tương tự như trên. java, javac, javawsCó lẽ thường xuyên nhất yêu cầu. Câu trả lời này liệt kê các thực thi khác có sẵn.

  • Chạy

    sudo update-thay thế --config java
    

    Bạn sẽ thấy đầu ra tương tự như đầu ra bên dưới - chọn số jdk1.8.0 - ví dụ 3trong danh sách này (trừ khi bạn chưa bao giờ cài đặt Java được cài đặt trong máy tính của mình, trong trường hợp một câu có nội dung "Không có gì để cấu hình" sẽ xuất hiện ):

    $ sudo update-alternatives --config java
    There are 3 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/jdk1.7.0/bin/java                   1         manual mode
      3            /usr/lib/jvm/jdk1.8.0/bin/java                   1         manual mode
    
    Press enter to keep the current choice[*], or type selection number: 3
    update-alternatives: using /usr/lib/jvm/jdk1.8.0/bin/java to provide /usr/bin/java (java) in manual mode

    Lặp lại như trên cho:

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

Lưu ý cho người dùng NetBeans!

Bạn cần đặt JDK mới làm mặc định chỉnh sửa tệp cấu hình.


Nếu bạn muốn kích hoạt plugin Mozilla Firefox:

32 bit:
ln -s /usr/lib/jvm/jdk1.8.0/jre/lib/i386/libnpjp2.so ~/.mozilla/plugins/

64 bit:
ln -s /usr/lib/jvm/jdk1.8.0/jre/lib/amd64/libnpjp2.so ~/.mozilla/plugins/

Lưu ý: Bạn có thể liên kết plugin ( libnpjp2.so) với bản /usr/lib/firefox/plugins/cài đặt toàn hệ thống ( /usr/lib/firefox-addons/pluginstừ 15.04 trở đi). Đối với Ubuntu 13.10, đường dẫn đến thư mục plugin là /usr/lib/firefox/browser/plugins/.

Tùy thuộc vào cấu hình của bạn, bạn có thể cần cập nhật cấu hình apparmor cho Firefox (hoặc các trình duyệt khác) trong /etc/apparmor.d/abstractions/ubuntu-browsers.d/java:

# Replace the two lines:
#  /usr/lib/jvm/java-*-sun-1.*/jre/bin/java{,_vm} cx -> browser_java,
#  /usr/lib/jvm/java-*-sun-1.*/jre/lib/*/libnp*.so cx -> browser_java,
# with those (or adapt to your new jdk folder name)
/usr/lib/jvm/jdk*/jre/bin/java{,_vm} cx -> browser_java,
/usr/lib/jvm/jdk*/jre/lib/*/libnp*.so cx -> browser_java,

Sau đó khởi động lại apparmor:

sudo /etc/init.d/apparmor restart

Cách dễ dàng (lỗi thời)

Lưu ý: PPA của nhóm WebUpd8 đã bị ngừng hoạt động kể từ ngày 16 tháng 4 năm 2019. Do đó, PPA này không có bất kỳ tệp Java nào. Thông tin thêm có thể được tìm thấy trên trang của PPA trên Launchpad . Do đó phương pháp này không còn hoạt động và tồn tại vì lý do thù địch.

Cách dễ nhất để cài đặt JDK 7 là làm điều đó với Web Up8 Oracle Java OOS. Tuy nhiên, người ta tin rằng PPA này đôi khi đã lỗi thời. Cũng lưu ý những nguy hiểm của việc sử dụng PPA .

Cái này cài đặt JDK 7 (bao gồm Java JDK, JRE và plugin trình duyệt Java):

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
# or if you want JDK 8:
# sudo apt-get install oracle-java8-installer
# these commands install Oracle JDK7/8 and set them as default VMs automatically:
# sudo apt-get install oracle-java7-set-default
# sudo apt-get install oracle-java8-set-default

Nguồn

Lưu ý: Trước khi ai đó hét lên, điều này trái với giấy phép phân phối lại của Oracle - PPA không thực sự có Java trong kho lưu trữ cá nhân. Thay vào đó, PPA trực tiếp tải xuống từ Oracle và cài đặt nó.

Cách viết kịch bản

Nếu bạn đang cài đặt Ubuntu mới mà không cài đặt Java trước đó, tập lệnh này sẽ tự động hóa quy trình được nêu ở trên nếu bạn không muốn nhập tất cả vào bảng điều khiển. Hãy nhớ rằng, bạn vẫn cần tải xuống Java từ trang web của Oracle - các liên kết của Oracle không wgetthân thiện.

Trước khi sử dụng, hãy đảm bảo rằng tập lệnh này nằm trong cùng thư mục với .tar.gzphần mở rộng tệp mà bạn đã tải xuống và không có tệp nào bắt đầu bằng jdk-7 trong cùng thư mục. Nếu có, xin vui lòng tạm thời di chuyển chúng ra khỏi thư mục. Hãy nhớ để làm cho tập lệnh thực thi ( chmod +x <script's file>).

#!/bin/sh

tar -xvf jdk-7*
sudo mkdir /usr/lib/jvm
sudo mv ./jdk1.7* /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
sudo chmod a+x /usr/bin/java
sudo chmod a+x /usr/bin/javac
sudo chmod a+x /usr/bin/javaws

Nếu bạn muốn cài đặt plugin cho Firefox thì hãy thêm phần này vào cuối tập lệnh:

mkdir ~/.mozilla/plugins
ln -s /usr/lib/jvm/jdk1.7.0/jre/lib/amd64/libnpjp2.so ~/.mozilla/plugins/
sudo /etc/init.d/apparmor restart

Kiểm tra nếu cài đặt thành công

Bạn có thể kiểm tra nếu cài đặt thành công với lệnh sau:

java -version

Bạn sẽ thấy một cái gì đó như

java version "1.8.0"
Java(TM) SE Runtime Environment (build 1.8.0-b132)
Java HotSpot(TM) 64-Bit Server VM (build 25.0-b70, mixed mode)

Bạn có thể kiểm tra xem plugin JRE Mozilla có thành công hay không bằng cách sử dụng trang web chính thức .


Đối với Java 6: Làm cách nào để tôi cài đặt Oracle JDK 6?


8
Có cần thiết phải làm tất cả các quá trình tương tự để cập nhật nó?
Lucio

5
Điều này đã làm việc thành công đối với tôi khi cài đặt JDK 32 bit trên Ubuntu 12.04LTS, ngoại trừ việc tôi đã nhận được bash: /usr/bin/java: No such file or directorykhi tôi cố chạy java -version. apt-get install libc6-i386đã khắc phục sự cố.
gregmac

4
Tôi đề nghị sử dụng /usr/local/*thay /usr/*cho bất kỳ cài đặt thủ công như ở đây. Bằng cách đó, những gì bạn cài đặt thủ công sẽ không làm lộn xộn với những thứ được quản lý bởi trình quản lý gói và làm cho việc cài đặt thủ công trở nên dễ quản lý hơn
Flint

4
Tôi thực sự khuyên bạn nên cách thủ công ra khỏi đây. Nó là đáng tin cậy nhất. PPA không hoạt động nữa kể từ khi Java Java được cấp phép. Và đoạn script trên giả định rằng bạn đang sử dụng trình biên dịch và thời gian chạy và phiên bản trên đó đã lỗi thời.
JohnMerlino

1
Làm thế nào tôi có thể cài đặt manpage?
Tim

173

Có một câu trả lời tương tự về cách cài đặt JDK 8

Cài đặt JRE

Tải xuống "tệp nhị phân nén" 32 bit hoặc 64 bit của Linux - nó có phần mở rộng tệp ".tar.gz" và giải nén nó

tar -xvf jre-7-linux-i586.tar.gz

Gói JRE 7 được trích xuất vào thư mục ./jre1.7.0. Bây giờ di chuyển thư mục JRE 7 đến /usr/lib:

sudo mv ./jre1.7.0* /usr/lib/jvm/jre1.7.0

Sau đó, chạy phần sau để có danh sách các lựa chọn thay thế Java hiện được cài đặt.

sudo update-alternatives --config java

Bạn sẽ nhận được đầu ra là:

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

Selection Path Priority Status
————————————————————
* 0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 auto mode
1 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 manual mode
2 /usr/lib/jvm/java-6-sun/jre/bin/java 63 manual mode

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

Ghi nhớ số cuối cùng và nhấn enter để thoát khỏi tiện ích này tức là trong ví dụ này hãy nhớ số này 2.

Nếu chỉ có một thay thế được hiển thị thì hãy nhớ số 0.

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jre1.7.0/bin/java 3

Điều này sẽ thêm cài đặt JRE 7 mới của bạn vào danh sách thay thế, tức là sử dụng số đã nhớ + 1, nghĩa là 3 trong ví dụ trên. Bây giờ cấu hình Java để sử dụng JRE Java Java:

sudo update-alternatives --config java

Bạn sẽ thấy đầu ra tương tự như bên dưới - chọn số jre1.7.0, nghĩa là 3:

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

Selection Path Priority Status
————————————————————
* 0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 auto mode
1 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 manual mode
2 /usr/lib/jvm/java-6-sun/jre/bin/java 63 manual mode
3 /usr/lib/jvm/jre1.7.0/jre/bin/java 3 manual mode

Press enter to keep the current choice[*], or type selection number: 3
update-alternatives: using /usr/lib/jvm/jre1.7.0/jre/bin/java to provide /usr/bin/java (java) in manual mode.

Lưu ý: Nếu không có cài đặt Java trước đó thì JRE mới sẽ là mặc định và bạn sẽ không thấy ở trên.

Kiểm tra phiên bản cài đặt JRE 7 mới của bạn:

java -version

Nó sẽ sản xuất

java version 1.7.0
Java(TM) SE Runtime Environment (build 1.7.0-b147)
Java HotSpot(TM) Client VM (build 21.0-b17, mixed mode)

Cài đặt plugin Firefox / Chrome

Trong một thiết bị đầu cuối:

mkdir ~/.mozilla/plugins

Gỡ bỏ plugin IcedTea, nếu nó đã được cài đặt.

sudo apt-get remove icedtea6-plugin

Xóa phiên bản cũ của plugin Java (có thể có hoặc không có):

rm ~/.mozilla/plugins/libnpjp2.so

Bây giờ bạn có thể cài đặt plugin, bằng cách tạo một liên kết tượng trưng (bạn nói với Firefox, nơi đặt plugin). Để sử dụng Java 32 bit

ln -s /usr/lib/jvm/jre1.7.0/lib/i386/libnpjp2.so ~/.mozilla/plugins/

Để sử dụng Java 64 bit

ln -s /usr/lib/jvm/jre1.7.0/lib/amd64/libnpjp2.so ~/.mozilla/plugins/

Xác nhận rằng JRE đã thành công bằng cách sử dụng trang web chính thức .


10
Sau khi chạy sudo update-alternatives --config java, tôi nhận được kết quả đầu ra: There is only one alternative in link group java: /usr/lib/jvm/java-6-openjdk/jre/bin/java Nothing to configure.Tôi đang làm gì sai?
Shoan

7
câu trả lời tuyệt vời, cảm ơn! Tự hỏi tại sao Oracle không thể dành thời gian để thực hiện các gói cho việc này ....
bbqchickenrobot

1
@Shoan, trong trường hợp đó, đi đến bước "nếu chỉ có một thay thế được hiển thị thì hãy nhớ số 0"
henrique

3
Cảm ơn bạn vì câu trả lời này, hướng dẫn của Oracles là rác rưởi cho một noob linux, điều này làm cho mọi thứ trở nên dễ dàng hơn rất nhiều!
David Barker

1
Trong khi phương thức này hoạt động - apt-get sẽ không biết rằng bạn đã cài đặt java. Vì vậy, cố gắng cài đặt các công cụ như ant, maven, v.v. vẫn sẽ muốn cài đặt openjdk. Thay vào đó, một cái gì đó như webupd8.org/2012/01/ đã làm việc rất tốt cho tôi!
Brad

100

Đây là một giải pháp đã được thử nghiệm và hoạt động để cài đặt Oracle JDK 7 và tất cả các tệp của nó để "javac" và mọi thứ khác hoạt động: Cách cài đặt Oracle Java 7 (JDK) trong Ubuntu

Dưới đây là các lệnh (chỉ để thuận tiện):

  1. Tải xuống Oracle JDK 7 mới nhất từ đây .
  2. Trích xuất kho lưu trữ JDK Java Java đã tải xuống trong thư mục nhà của bạn - một thư mục mới có tên "jdk1.7.0_03" (đối với bản cập nhật Java JDK7 3) nên được tạo. Đổi tên thành "java-7-oracle" và di chuyển nó thành / usr / lib / jvm bằng các lệnh sau:
cd
sudo mkdir -p /usr/lib/jvm/      #just in case
sudo mv java-7-oracle/ /usr/lib/jvm/

3. Cài đặt gói Cập nhật Java được tạo bởi Bruce Ingalls (các gói có sẵn cho Ubuntu 11.10, 11.04, 10.10 và 10.04):

sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt-get update
sudo apt-get install update-java

4. Bây giờ hãy chạy lệnh sau trong một thiết bị đầu cuối để cài đặt Oracle Java JDK:

sudo update-java

Chọn Phiên bản Java mà bạn muốn cài đặt và đặt làm mặc định

Sau vài phút, Oracle Java JDK sẽ được cài đặt thành công trên máy Ubuntu của bạn. Bạn có thể kiểm tra phiên bản bằng cách chạy các lệnh này trong một thiết bị đầu cuối:

java -version
javac -version

ĐỂ Ý! Phần dưới đây của câu trả lời này không còn hoạt động do Java thay đổi cách thức nhị phân của chúng được phát hành. Nó đã được để lại như là vì lý do lịch sử.

Cập nhật Oracle đã phát hành Java 8 (ổn định). Để cài đặt nó, sử dụng các lệnh sau:

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer

Thêm thông tin @ WebUpd8: Cài đặt Oracle Java 8 trong Ubuntu thông qua kho lưu trữ PPA [JDK8]


Tôi nghĩ rằng tập lệnh này sẽ hoạt động cho Gnome (công cụ) nhưng yêu cầu rất nhiều cài đặt bổ sung như đối với máy Kubfox (ví dụ: thiếu gksudo trên Kubfox).
Marcin Gil

Giải pháp tốt và tương đối không gây đau đớn trên Chính xác, chỉ cần cài đặt jdk1.7.0_03 trên đó
prusswan

Tôi cũng chỉ sử dụng phương pháp này để đưa jdk1.7.0_03 vào Chính xác beta 2. Nó đã hoạt động, mặc dù một lỗi đã được báo cáo (rõ ràng là trong Zenity); lỗi không xuất hiện đã ảnh hưởng đến kết quả.
Kelley

1
đã dùng thử trên Ubuntu 13.04 và nó hoạt động. +1 cảm ơn
mamdouh alramadan

1
Thêm thông tin rằng, nếu chúng tôi không muốn xóa bất kỳ jdk hiện có nào, thì chúng tôi nên bỏ qua hộp thoại đầu tiên xóa jdk hiện tại
Anwar

94

ĐỂ Ý! Giải pháp này không còn hoạt động do Java thay đổi cách phát hành nhị phân của chúng. Kết quả là câu trả lời này không còn giá trị. Nó đã được để lại như là vì lý do lịch sử.

Từ http://www.webupd8.org/2012/01/install-oracle-java-jdk-7-in-ub Ubuntu-via.html :

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-jdk7-installer

15
Tôi tự hỏi tại sao hầu hết mọi người đều muốn sử dụng câu trả lời đầu tiên, khá phức tạp và đòi hỏi nhiều công việc thủ công, như tải xuống trình cài đặt trên máy của bạn và chuyển nó đến máy chủ. Câu trả lời của bạn rất đơn giản và hiệu quả !!! TX
sorin

4
@SorinSbarnea Một số người không thích sử dụng kho lưu trữ của bên thứ ba vì họ không luôn cập nhật hoặc trực tuyến cho vấn đề đó.
umop aplsdn

Trên máy chủ Ubuntu, tôi đã phải sử dụng "sudo apt-get install python-software-property" để nhận lệnh add-apt-repository.
Mark Butler

@SorinSbarnea vì kho lưu trữ nói chung đã hết hạn
dstarh

1
Lưu ý rằng Webupd8 PPA cũng chứa một tập lệnh sẽ đặt Oracle Java làm mặc định (hữu ích nếu bạn đã cài đặt nhiều JRE / JDK), cài đặt nó với sudo apt-get install oracle-java8-set-default. Cũng lưu ý rằng câu trả lời này là một chút lỗi thời, có lẽ bạn nên cài đặt oracle-java8-installernhững ngày này.
JonasCz

39

Đây là cách tôi cài đặt nó trong Oneiric vừa rồi. Nó sẽ là một câu trả lời khá dài, nhưng nó đã làm việc cho tôi.

Tải xuống Java SDK 1.7.0 mới nhất từ ​​Oracle. Sau đó giải nén nó thành / usr / lib / jvm :

cd /usr/lib/jvm/
sudo tar -xvzf ~/jdk-7-linux-x64.tar.gz
sudo mv jdk1.7.0 java-7-oracle
sudo ln -s java-7-oracle java-1.7.0-oracle

Sau đó, tôi đã tạo tệp .java-1.7.0-oracle.jinfo trong / usr / lib / jvm với nội dung sau:

alias=java-7-oracle
priority=100
section=non-free

jre ControlPanel /usr/lib/jvm/java-7-oracle/jre/bin/ControlPanel
jre java /usr/lib/jvm/java-7-oracle/jre/bin/java
jre java_vm /usr/lib/jvm/java-7-oracle/jre/bin/java_vm
jre javaws /usr/lib/jvm/java-7-oracle/jre/bin/javaws
jre jcontrol /usr/lib/jvm/java-7-oracle/jre/bin/jcontrol
jre keytool /usr/lib/jvm/java-7-oracle/jre/bin/keytool
jre pack200 /usr/lib/jvm/java-7-oracle/jre/bin/pack200
jre policytool /usr/lib/jvm/java-7-oracle/jre/bin/policytool
jre rmid /usr/lib/jvm/java-7-oracle/jre/bin/rmid
jre rmiregistry /usr/lib/jvm/java-7-oracle/jre/bin/rmiregistry
jre unpack200 /usr/lib/jvm/java-7-oracle/jre/bin/unpack200
jre orbd /usr/lib/jvm/java-7-oracle/jre/bin/orbd
jre servertool /usr/lib/jvm/java-7-oracle/jre/bin/servertool
jre tnameserv /usr/lib/jvm/java-7-oracle/jre/bin/tnameserv
jre jexec /usr/lib/jvm/java-7-oracle/jre/lib/jexec
jdk appletviewer /usr/lib/jvm/java-7-oracle/bin/appletviewer
jdk apt /usr/lib/jvm/java-7-oracle/bin/apt
jdk extcheck /usr/lib/jvm/java-7-oracle/bin/extcheck
jdk idlj /usr/lib/jvm/java-7-oracle/bin/idlj
jdk jar /usr/lib/jvm/java-7-oracle/bin/jar
jdk jarsigner /usr/lib/jvm/java-7-oracle/bin/jarsigner
jdk java-rmi.cgi /usr/lib/jvm/java-7-oracle/bin/java-rmi.cgi
jdk javac /usr/lib/jvm/java-7-oracle/bin/javac
jdk javadoc /usr/lib/jvm/java-7-oracle/bin/javadoc
jdk javah /usr/lib/jvm/java-7-oracle/bin/javah
jdk javap /usr/lib/jvm/java-7-oracle/bin/javap
jdk jconsole /usr/lib/jvm/java-7-oracle/bin/jconsole
jdk jdb /usr/lib/jvm/java-7-oracle/bin/jdb
jdk jhat /usr/lib/jvm/java-7-oracle/bin/jhat
jdk jinfo /usr/lib/jvm/java-7-oracle/bin/jinfo
jdk jmap /usr/lib/jvm/java-7-oracle/bin/jmap
jdk jps /usr/lib/jvm/java-7-oracle/bin/jps
jdk jrunscript /usr/lib/jvm/java-7-oracle/bin/jrunscript
jdk jsadebugd /usr/lib/jvm/java-7-oracle/bin/jsadebugd
jdk jstack /usr/lib/jvm/java-7-oracle/bin/jstack
jdk jstat /usr/lib/jvm/java-7-oracle/bin/jstat
jdk jstatd /usr/lib/jvm/java-7-oracle/bin/jstatd
jdk native2ascii /usr/lib/jvm/java-7-oracle/bin/native2ascii
jdk rmic /usr/lib/jvm/java-7-oracle/bin/rmic
jdk schemagen /usr/lib/jvm/java-7-oracle/bin/schemagen
jdk serialver /usr/lib/jvm/java-7-oracle/bin/serialver
jdk wsgen /usr/lib/jvm/java-7-oracle/bin/wsgen
jdk wsimport /usr/lib/jvm/java-7-oracle/bin/wsimport
jdk xjc /usr/lib/jvm/java-7-oracle/bin/xjc
plugin xulrunner-1.9-javaplugin.so /usr/lib/jvm/java-7-oracle/jre/lib/amd64/libnpjp2.so
plugin mozilla-javaplugin.so /usr/lib/jvm/java-7-oracle/jre/lib/amd64/libnpjp2.so

Sau đó, bạn cần thông báo thay thế cập nhật về tất cả các công cụ mới:

$ sudo -sH
Password:
# update-alternatives --quiet --install /usr/lib/xulrunner-addons/plugins/libjavaplugin.so xulrunner-1.9-javaplugin.so /usr/lib/jvm/java-7-oracle/jre/lib/amd64/libnpjp2.so 100
# update-alternatives --quiet --install /usr/lib/mozilla/plugins/libjavaplugin.so mozilla-javaplugin.so /usr/lib/jvm/java-7-oracle/jre/lib/amd64/libnpjp2.so 100
# update-alternatives --quiet --install /usr/bin/appletviewer appletviewer /usr/lib/jvm/java-7-oracle/bin/appletviewer 100 --slave /usr/share/man/man1/appletviewer.1 appletviewer.1 /usr/lib/jvm/java-7-oracle/man/man1/appletviewer.1
# update-alternatives --quiet --install /usr/bin/apt apt /usr/lib/jvm/java-7-oracle/bin/apt 100 --slave /usr/share/man/man1/apt.1 apt.1 /usr/lib/jvm/java-7-oracle/man/man1/apt.1
# update-alternatives --quiet --install /usr/bin/extcheck extcheck /usr/lib/jvm/java-7-oracle/bin/extcheck 100 --slave /usr/share/man/man1/extcheck.1 extcheck.1 /usr/lib/jvm/java-7-oracle/man/man1/extcheck.1
# update-alternatives --quiet --install /usr/bin/idlj idlj /usr/lib/jvm/java-7-oracle/bin/idlj 100 --slave /usr/share/man/man1/idlj.1 idlj.1 /usr/lib/jvm/java-7-oracle/man/man1/idlj.1
# update-alternatives --quiet --install /usr/bin/jar jar /usr/lib/jvm/java-7-oracle/bin/jar 100 --slave /usr/share/man/man1/jar.1 jar.1 /usr/lib/jvm/java-7-oracle/man/man1/jar.1
# update-alternatives --quiet --install /usr/bin/jarsigner jarsigner /usr/lib/jvm/java-7-oracle/bin/jarsigner 100 --slave /usr/share/man/man1/jarsigner.1 jarsigner.1 /usr/lib/jvm/java-7-oracle/man/man1/jarsigner.1
# update-alternatives --quiet --install /usr/bin/javac javac /usr/lib/jvm/java-7-oracle/bin/javac 100 --slave /usr/share/man/man1/javac.1 javac.1 /usr/lib/jvm/java-7-oracle/man/man1/javac.1
# update-alternatives --quiet --install /usr/bin/javadoc javadoc /usr/lib/jvm/java-7-oracle/bin/javadoc 100 --slave /usr/share/man/man1/javadoc.1 javadoc.1 /usr/lib/jvm/java-7-oracle/man/man1/javadoc.1
# update-alternatives --quiet --install /usr/bin/javah javah /usr/lib/jvm/java-7-oracle/bin/javah 100 --slave /usr/share/man/man1/javah.1 javah.1 /usr/lib/jvm/java-7-oracle/man/man1/javah.1
# update-alternatives --quiet --install /usr/bin/javap javap /usr/lib/jvm/java-7-oracle/bin/javap 100 --slave /usr/share/man/man1/javap.1 javap.1 /usr/lib/jvm/java-7-oracle/man/man1/javap.1
# update-alternatives --quiet --install /usr/bin/jconsole jconsole /usr/lib/jvm/java-7-oracle/bin/jconsole 100 --slave /usr/share/man/man1/jconsole.1 jconsole.1 /usr/lib/jvm/java-7-oracle/man/man1/jconsole.1
# update-alternatives --quiet --install /usr/bin/jdb jdb /usr/lib/jvm/java-7-oracle/bin/jdb 100 --slave /usr/share/man/man1/jdb.1 jdb.1 /usr/lib/jvm/java-7-oracle/man/man1/jdb.1
# update-alternatives --quiet --install /usr/bin/jhat jhat /usr/lib/jvm/java-7-oracle/bin/jhat 100 --slave /usr/share/man/man1/jhat.1 jhat.1 /usr/lib/jvm/java-7-oracle/man/man1/jhat.1
# update-alternatives --quiet --install /usr/bin/jinfo jinfo /usr/lib/jvm/java-7-oracle/bin/jinfo 100 --slave /usr/share/man/man1/jinfo.1 jinfo.1 /usr/lib/jvm/java-7-oracle/man/man1/jinfo.1
# update-alternatives --quiet --install /usr/bin/jmap jmap /usr/lib/jvm/java-7-oracle/bin/jmap 100 --slave /usr/share/man/man1/jmap.1 jmap.1 /usr/lib/jvm/java-7-oracle/man/man1/jmap.1
# update-alternatives --quiet --install /usr/bin/jps jps /usr/lib/jvm/java-7-oracle/bin/jps 100 --slave /usr/share/man/man1/jps.1 jps.1 /usr/lib/jvm/java-7-oracle/man/man1/jps.1
# update-alternatives --quiet --install /usr/bin/jrunscript jrunscript /usr/lib/jvm/java-7-oracle/bin/jrunscript 100 --slave /usr/share/man/man1/jrunscript.1 jrunscript.1 /usr/lib/jvm/java-7-oracle/man/man1/jrunscript.1
# update-alternatives --quiet --install /usr/bin/jsadebugd jsadebugd /usr/lib/jvm/java-7-oracle/bin/jsadebugd 100 --slave /usr/share/man/man1/jsadebugd.1 jsadebugd.1 /usr/lib/jvm/java-7-oracle/man/man1/jsadebugd.1
# update-alternatives --quiet --install /usr/bin/jstack jstack /usr/lib/jvm/java-7-oracle/bin/jstack 100 --slave /usr/share/man/man1/jstack.1 jstack.1 /usr/lib/jvm/java-7-oracle/man/man1/jstack.1
# update-alternatives --quiet --install /usr/bin/jstat jstat /usr/lib/jvm/java-7-oracle/bin/jstat 100 --slave /usr/share/man/man1/jstat.1 jstat.1 /usr/lib/jvm/java-7-oracle/man/man1/jstat.1
# update-alternatives --quiet --install /usr/bin/jstatd jstatd /usr/lib/jvm/java-7-oracle/bin/jstatd 100 --slave /usr/share/man/man1/jstatd.1 jstatd.1 /usr/lib/jvm/java-7-oracle/man/man1/jstatd.1
# update-alternatives --quiet --install /usr/bin/native2ascii native2ascii /usr/lib/jvm/java-7-oracle/bin/native2ascii 100 --slave /usr/share/man/man1/native2ascii.1 native2ascii.1 /usr/lib/jvm/java-7-oracle/man/man1/native2ascii.1
# update-alternatives --quiet --install /usr/bin/rmic rmic /usr/lib/jvm/java-7-oracle/bin/rmic 100 --slave /usr/share/man/man1/rmic.1 rmic.1 /usr/lib/jvm/java-7-oracle/man/man1/rmic.1
# update-alternatives --quiet --install /usr/bin/schemagen schemagen /usr/lib/jvm/java-7-oracle/bin/schemagen 100 --slave /usr/share/man/man1/schemagen.1 schemagen.1 /usr/lib/jvm/java-7-oracle/man/man1/schemagen.1
# update-alternatives --quiet --install /usr/bin/serialver serialver /usr/lib/jvm/java-7-oracle/bin/serialver 100 --slave /usr/share/man/man1/serialver.1 serialver.1 /usr/lib/jvm/java-7-oracle/man/man1/serialver.1
# update-alternatives --quiet --install /usr/bin/wsgen wsgen /usr/lib/jvm/java-7-oracle/bin/wsgen 100 --slave /usr/share/man/man1/wsgen.1 wsgen.1 /usr/lib/jvm/java-7-oracle/man/man1/wsgen.1
# update-alternatives --quiet --install /usr/bin/wsimport wsimport /usr/lib/jvm/java-7-oracle/bin/wsimport 100 --slave /usr/share/man/man1/wsimport.1 wsimport.1 /usr/lib/jvm/java-7-oracle/man/man1/wsimport.1
# update-alternatives --quiet --install /usr/bin/xjc xjc /usr/lib/jvm/java-7-oracle/bin/xjc 100 --slave /usr/share/man/man1/xjc.1 xjc.1 /usr/lib/jvm/java-7-oracle/man/man1/xjc.1
# update-alternatives --quiet --install /usr/bin/java-rmi.cgi java-rmi.cgi /usr/lib/jvm/java-7-oracle/bin/java-rmi.cgi 100
# update-alternatives --quiet --install /usr/bin/ControlPanel ControlPanel /usr/lib/jvm/java-7-oracle/jre/bin/ControlPanel 100
# update-alternatives --quiet --install /usr/bin/java java /usr/lib/jvm/java-7-oracle/jre/bin/java 100
# update-alternatives --quiet --install /usr/bin/java_vm java_vm /usr/lib/jvm/java-7-oracle/jre/bin/java_vm 100
# update-alternatives --quiet --install /usr/bin/javaws javaws /usr/lib/jvm/java-7-oracle/jre/bin/javaws 100
# update-alternatives --quiet --install /usr/bin/jcontrol jcontrol /usr/lib/jvm/java-7-oracle/jre/bin/jcontrol 100
# update-alternatives --quiet --install /usr/bin/keytool keytool /usr/lib/jvm/java-7-oracle/jre/bin/keytool 100
# update-alternatives --quiet --install /usr/bin/pack200 pack200 /usr/lib/jvm/java-7-oracle/jre/bin/pack200 100
# update-alternatives --quiet --install /usr/bin/policytool policytool /usr/lib/jvm/java-7-oracle/jre/bin/policytool 100
# update-alternatives --quiet --install /usr/bin/rmid rmid /usr/lib/jvm/java-7-oracle/jre/bin/rmid 100
# update-alternatives --quiet --install /usr/bin/rmiregistry rmiregistry /usr/lib/jvm/java-7-oracle/jre/bin/rmiregistry 100
# update-alternatives --quiet --install /usr/bin/unpack200 unpack200 /usr/lib/jvm/java-7-oracle/jre/bin/unpack200 100
# update-alternatives --quiet --install /usr/bin/orbd orbd /usr/lib/jvm/java-7-oracle/jre/bin/orbd 100
# update-alternatives --quiet --install /usr/bin/servertool servertool /usr/lib/jvm/java-7-oracle/jre/bin/servertool 100
# update-alternatives --quiet --install /usr/bin/tnameserv tnameserv /usr/lib/jvm/java-7-oracle/jre/bin/tnameserv 100
# update-alternatives --quiet --install /usr/bin/jexec jexec /usr/lib/jvm/java-7-oracle/jre/lib/jexec 100

Bây giờ bạn có thể sử dụng các lựa chọn thay thế cập nhật để chọn SDK Java mới được cài đặt.

# update-alternatives --config java              # Select java-1.7.0-oracle
# update-java-alternatives --set java-1.7.0-oracle
# exit
$

Điều này hiệu quả với tôi, nếu có một cách thanh lịch hơn (không sử dụng PPA của bên thứ ba) tôi rất vui khi biết về nó. Tôi vẫn cần kiểm tra Firefox nếu tôi có thể chạy Java trong đó.


1
Hoạt động rất tốt, ngoại trừ lệnh cuối cùng có lỗi (mặc dù mọi thứ khác đều hoạt động, ngay cả trong Firefox / Chrome). Đây dường như là từ cài đặt OpenJDK6 mặc định với Oneiric. "Update-Alternators: error: không có lựa chọn thay thế nào cho -javaplugin.so." Trong tệp .java.1.6.0.jinfo ẩn dường như có một sự thay thế trỏ đến -javaplugin.so. Chúng ta có nên tạo một điểm thay thế thứ 3 cho libnpjp2.so với nó không?
Nicholi

2
Tôi quyết định đặt các bước được BigWhale đề cập ở trên trong một tập lệnh shell đơn giản. Bước thủ công duy nhất là tải xuống tar.gz 64 bit từ trang web của Oracle. Có một cái nhìn vào các hướng dẫn ở đây.
julius

1
Đây là giải pháp duy nhất cho thấy cách thêm các trang man!
DavidG

@DavidG Giải pháp của Alien Andrei cũng hoạt động hoàn hảo
Anwar

1
Ngoài ra giải pháp này là dành cho Ubuntu 64 bit. đối với 32 bit, chúng ta nên có i386thay vìamd64
Anwar

26

CÂU TRẢ LỜI CẬP NHẬT:

Tôi đề nghị sử dụng một trong các trình cài đặt từ webupd8team ppa theo cách này:

1) Nhập 2 lệnh này vào Terminal để thêm PPA này và cập nhật danh sách các gói của bạn:

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

2) Nhập một (hoặc nhiều) trong số các lệnh này để cài đặt (các) Java độc quyền mà bạn yêu cầu:

  • sudo apt-get install oracle-java6-installer
  • sudo apt-get install oracle-java7-installer
  • sudo apt-get install oracle-java8-installer
  • sudo apt-get install oracle-java9-installer

3) Khi tập lệnh trình cài đặt Java tương ứng được tải và sau đó nó tải xuống và cài đặt các gói Java độc quyền, bạn cũng có thể nhập lệnh sau để kiểm tra kết quả cài đặt:

java -version

Sau đó, bạn sẽ nhận được một đầu ra thiết bị đầu cuối (cho phiên bản ổn định java8) như thế này:

java version "1.8.0_72"
Java(TM) SE Runtime Environment (build 1.8.0_72-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.72-b15, mixed mode)

Thông tin khác: http://www.webupd8.org/2012/09/install-oracle-java-8-in-ubfox-via-ppa.html

NB: Các gói này cung cấp JDK Java Java, bao gồm Java JDK, JRE và plugin trình duyệt Java. Và webupd8team / java PPA chỉ chứa các trình cài đặt này, chỉ đơn giản là kết nối với trang tải xuống Java Java và cài đặt JDK mới nhất.


1
Cảm ơn về câu trả lời. Chỉ có cách này mới làm cho Chrome JRE của tôi hoạt động!
Fatih Karatana

Nó chỉ cài đặt jre hay toàn bộ jdk, nếu toàn bộ jdk, thì cách nào để hạn chế cài đặt chỉ cho jre?
Rajat Gupta

loại cài đặt này có cung cấp cho tôi các bản cập nhật tự động khi chúng được phát hành và không thêm ppa này thêm các loại phần mềm khác vô tình vào máy chủ của tôi không?
Rajat Gupta

4
Điều này cài đặt JDK : "Gói này cung cấp Oracle Java JDK 7 (bao gồm Java JDK, JRE và plugin trình duyệt Java). Tuy nhiên, bạn không thể chỉ cài đặt Oracle JRE - PPA chỉ cung cấp gói Oracle JDK7 đầy đủ." ref
kiri

16

Tôi đánh giá cao tất cả các câu trả lời trước đó. Tôi muốn thêm câu trả lời này để đơn giản hóa những điều được thực hiện bởi www.webupd8.org để thực hiện cài đặt trong 2-5 phút .

Cài đặt này bao gồm:

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer

Đó là tất cả!! Bây giờ để kiểm tra phiên bản Java

java -version

Đầu ra sẽ như thế nào

java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) Server VM (build 23.25-b01, mixed mode

Có thể có một phiên bản mới, và sau đó bạn có thể chỉ cần cập nhật nó bằng lệnh này:

sudo update-java-alternatives -s java-7-oracle

Thiết lập các biến môi trường

sudo apt-get install oracle-java7-set-default

Để biết thêm, hãy xem Cài đặt Oracle Java 7 trong Ubuntu thông qua Kho lưu trữ PPA .


3
2-5 phút? phải mất 77 phút

3
Giải pháp tốt đẹp. Điều này nên được nâng lên cao hơn. Thời gian cài đặt có thể mất hơn 5 phút tùy thuộc vào tốc độ internet của bạn (tải xuống là ~ 70MB). Đối với việc thiết lập máy Java mặc định, tôi thích : sudo update-alternatives --config java.
Landroni

15

Giải pháp này sẽ cung cấp cho bạn các gói được xây dựng sạch giống như chúng đã sử dụng để gửi cùng với Ubuntu trước khi Oracle xuất hiện.

Câu trả lời

Đầu tiên là câu trả lời, sau đó là lời giải thích. Mở một thiết bị đầu cuối và sao chép và dán sau đây, từng dòng.

wget https://raw.githubusercontent.com/ladios/oab-java6/master/oab-java.sh -O oab-java.sh
chmod +x oab-java.sh
sudo ./oab-java.sh

Điều này sẽ xây dựng các gói sun-java6- * chính thức và làm cho chúng có sẵn trong trung tâm phần mềm. Nếu bạn cũng muốn các gói oracle-java7- *, hãy chạy tập lệnh như thế này:

sudo ./oab-java.sh -7

Bây giờ bạn có thể cài đặt các gói với trình quản lý gói ưa thích của bạn.

Lời giải thích

Khi Oracle thay đổi giấy phép phân phối cho Java, các bản phân phối Linux không được phép cập nhật các gói chính thức nữa. Người dùng Github rraptorr đã lấy tập lệnh Debian được sử dụng để xây dựng các gói cho đến lúc đó và sửa đổi nó để hoạt động với các bản tải xuống được cập nhật từ Oracle. Bây giờ ông cung cấp các tập lệnh đóng gói cho SUN Java6Oracle Java7 .

Các oab.java.sh kịch bản chỉ là một wrapper tự động tải các phiên bản hiện tại, tạo ra các gói và thêm chúng vào một kho lưu trữ địa phương.

Ghi chú thêm

Các gói được tạo và cài đặt bằng phương pháp này, sẽ không nhận được cập nhật tự động - chỉ khi bạn chạy lại tập lệnh. Bạn có thể phá vỡ điều này bằng cách tạo một cronjob chạy tập lệnh này một cách thường xuyên. Cách khôn ngoan nhất để làm điều này là sử dụng anacron bằng cách đặt tập lệnh vào /etc/cron.daily .

wget https://raw.githubusercontent.com/ladios/oab-java6/master/oab-java.sh -O /root/oab-java.sh
chmod +x /root/oab-java.sh
ln -s /root/oab-java.sh /etc/cron.daily/oab-java

Bây giờ các gói Java chính thức của bạn sẽ luôn được cập nhật.


1
Tôi đã có quá nhiều vấn đề với kịch bản này -_-
qodeninja

@qodeninja, như thế nào? Tôi chưa bao giờ có vấn đề với kịch bản này. Thực hiện 3 dòng trên sẽ hoạt động chắc chắn trên mọi máy Ubuntu, nếu nó không bị hỏng.
mniess

Tôi có một phiên bản linode mới của Ubuntu 10.04 và tôi đã cố gắng cài đặt jre 7 với tập lệnh này. Kịch bản sẽ bị treo quá lâu vì thiếu phụ thuộc. Sau đó, tôi đã phải dừng tập lệnh và tự cài đặt các phụ thuộc với apt-get. Ngay cả sau khi tôi đã cài đặt mọi thứ, kịch bản vẫn thất bại.
qodeninja

Kịch bản thực sự không làm gì đặc biệt. Âm thanh như có gì đó không ổn với hộp của bạn. Tôi đã (và sáng) sử dụng cái này từ 8.04 đến 12.04 và không bao giờ gặp vấn đề gì. Tôi mới thử cái này trên máy chủ 10.04 của tôi có khá nhiều vani và nó cũng hoạt động. Vì vậy, bởi vì tập lệnh này không làm gì hơn là sử dụng các tập lệnh xây dựng debian cũ mà các trình đóng gói đã sử dụng để cung cấp sun-java * cho debian (và ubfox).
mniess

Trên Lubfox 15.04 Nó khởi động tốt, nhưng sau một thời gian tôi nhận đượcdebian/rules:67: recipe for target 'get-orig-source' failed make: *** [get-orig-source] Error 22 make: Leaving directory '/var/local/oab/src' 11678's retcode: 2 failed
rubo77

10

Điều này làm việc cho nhu cầu phát triển của tôi là có thể chạy / biên dịch 1.6 hoặc 1.7. Trước đây tôi chỉ chạy 1.6 từ gói apt apt.

  1. Tải xuống 1.7 gzip .
  2. Giải nén vào thư mục
  3. Cập nhật JAVA_HOME và PATH trong tệp bash

    JAVA_HOME=/opt/java/jdk1.7.0_25
    export JAVA_HOME
    
    PATH=$JAVA_HOME/bin:$PATH
    export PATH

9

Trên AMD64, bạn cần sửa đổi một chút lệnh để tạo liên kết tượng trưng:

ln -s /usr/lib/jvm/jre1.7.0/lib/amd64/libnpjp2.so ~/.mozilla/plugins/

chỉ thay đổi i386thành amd64.


Tiếng hét tốt! Không hoạt động trên 12.04 64-bit của tôi cho đến khi tôi đọc câu trả lời của bạn. Cảm ơn!
Scaine

2
-1. Câu trả lời này hoàn toàn nằm ngoài ngữ cảnh ..
Landroni

1
Đó không phải là câu trả lời của câu hỏi. Thay vào đó, nó nên là một bình luận
Anwar

7

Để cung cấp cho tất cả người dùng:

sudo ln -s /usr/lib/jvm/jre1.7.0/lib/i386/libnpjp2.so /usr/lib/mozilla/plugins/

cho x86_64:

sudo ln -s /usr/lib/jvm/jre1.7.0/lib/amd64/libnpjp2.so /usr/lib/mozilla/plugins/

1
Cảm ơn nhiều! Đây là những gì còn thiếu để java của tôi hoạt động trên firefox.
ThiagoPonte

7

Lấy JDK từ Oracle / Sun; tải xuống JDK Java tại:

http://www.oracle.com/technetwork/java/javase/overview/index.html

Vui lòng tải xuống hoặc di chuyển tệp đã tải xuống vào thư mục chính của bạn ~, để dễ dàng.

Ghi chú:

  • Đừng lo lắng về việc tải xuống JDK cho JEE.

  • Vui lòng bỏ qua việc sao chép "người dùng @ host: ~ $".

  • Nhấn enter sau mỗi lệnh.

Chạy trong một thiết bị đầu cuối ..

user@host:~$ sudo mkdir -p /usr/lib/jvm/
user@host:~$ sudo mv jdk-7u4-linux-i586.tar.gz /usr/lib/jvm/
user@host:~$ cd /usr/lib/jvm/
user@host:~$ sudo tar zxvf jdk-7u4-linux-i586.tar.gz

Bây giờ kích hoạt Java (bằng cách chạy riêng lẻ):

user@host:~$ sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0_04/bin/java" 1
user@host:~$ sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.7.0_04/bin/javac" 1
user@host:~$ sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/jdk1.7.0_04/bin/javaws" 1

Đóng tất cả các trình duyệt.

Tạo thư mục bổ trợ Mozilla trong thư mục chính của bạn:

user@host:~$ mkdir ~/.mozilla/plugins/

Tạo một liên kết tượng trưng đến thư mục plugin Mozilla của bạn. Đối với hệ thống 64 bit, thay thế 'i386' bằng 'amd64':

user@host:~$ ln -s /usr/lib/jvm/jdk1.7.0/jre/lib/i386/libnpjp2.so ~/.mozilla/plugins/

Kiểm tra:

user@host:~$ java -version

Đầu ra:

java version "1.7.0_04"
Java(TM) SE Runtime Environment (build 1.7.0_04-b20)
Java HotSpot(TM) Server VM (build 23.0-b21, mixed mode)

Kiểm tra:

user@host:~$ javac -version

Đầu ra:

javac 1.7.0_04

Xác minh JRE tại http://java.com/en/doad/installed.jsp .


6

Tôi đã viết một bài đăng trên blog với lời giải thích rất chi tiết về cách cài đặt Java 7 trên Natty, cả OpenJDK và Sun:

http://brunoreis.com/tech/installing-java-ubfox-natty/

OpenJDK được cài đặt từ PPA do Damien Lecan cung cấp và Sun's được cài đặt thủ công. Theo như được biết, cho đến bây giờ đó là hướng dẫn duy nhất đúng cả trong các bước và giải thích.

Nếu bạn tìm thấy bất kỳ vấn đề, gửi bình luận ở đó và tôi sẽ cố gắng khắc phục nó.

Chúc may mắn.


18
vui lòng cố gắng không liên kết với những thứ bên ngoài như một câu trả lời - đưa ra những phần có liên quan nhất trong câu trả lời của bạn. Lý do là các liên kết bên ngoài có thể biến mất trong tương lai - và do đó những người khác sẽ không thể tham khảo câu trả lời trong tương lai. Cảm ơn.
fossfreedom

Trong khi về mặt lý thuyết có thể trả lời câu hỏi, tốt hơn là nên bao gồm các phần thiết yếu của câu trả lời ở đây và cung cấp liên kết để tham khảo.
Kevin Bowen

5

Tôi đề xuất một cách để giúp cài đặt Java 7 của Oracle dễ dàng hơn.

Vì Ubuntu không cung cấp các gói Java 7 của Oracle, nên tôi đang cung cấp một bộ các gói Ubuntu trên kho lưu trữ gói của riêng tôi.

Các gói được tích hợp hoàn toàn theo cách Ubuntu để hỗ trợ Java. Bạn sẽ có thể chọn phương án Java 7 của Oracle bằng các công cụ tiêu chuẩn: thay thế cập nhật hoặc thay thế cập nhật java.

Trang chính đóng góp của tôi là: http://www.arakhne.org/jdk/index.html

Để có được các gói, bạn chỉ cần thêm kho gói của tôi vào cấu hình hệ thống của bạn. Quá trình này được giải thích trong http://www.arakhne.org/ubfox.html

Stéphane.


10
... chỉ là lời khuyên thân thiện - kiểm tra giấy phép phân phối lại của oracle ... bạn không muốn luật sư của oracle theo đuổi bạn!
fossfreedom

1
Xin vui lòng không gửi câu trả lời trùng lặp trên các câu hỏi khác nhau. Nó chỉ tạo ra nhiều công việc hơn cho người điều hành. Nếu các câu hỏi giống nhau đến mức cùng một câu trả lời hoạt động trên mỗi câu hỏi, thì câu hỏi sau của hai câu hỏi có khả năng trùng lặp và nên được gắn cờ như vậy.
RolandiXor


4

Đối với những người sống ở Syria, Cuba, Libya, Hàn Quốc hoặc bất kỳ quốc gia nào mà Oracle đang cấm dịch vụ của họ, đây là một cách làm việc để cài đặt Oracle JDK 8.

  1. Sử dụng PROXY, truy cập liên kết này và chấp nhận các điều khoản sau đó tải xuống tar.gz phù hợp với hệ thống của bạn (32 hoặc 64 bit).
  2. Di chuyển tarball đó vào thư mục Tải xuống trong thư mục nhà của bạn.
  3. chạy đoạn script này dưới dạng sudo:


if [[ $UID != 0 ]]; then
  echo "This script neeeds to be run with sudo, like this:"
  echo -e "\n  sudo $0 $*\n"
  exit 1
fi
apt-get install python-software-properties
add-apt-repository ppa:webupd8team/java
apt-get update
apt-get install oracle-java8-installer
if [ ! -f $HOME/Downloads/jdk-8u5-linux-*.tar.gz ]; then
  echo "The JDK tar.gz file was not found in $HOME/Downloads. please download it, put it in $HOME/Downloads and run again."
  exit 1
fi
cp ~/Downloads/jdk-8u5-linux-*.tar.gz /var/cache/oracle-jdk8-installer/
apt-get install oracle-java8-installer
apt-get install oracle-java8-set-default
java -version

3

Để cài đặt biến thể Java 32 bit trên Ubuntu 64 bit:

Mở một cửa sổ đầu cuối ( Ctrl+ Alt+ Tlà phương pháp nhanh nhất nếu bạn không biết) và nhập vào phần sau để cài đặt:

sudo add-apt-repository "deb http://download.tuxfamily.org/arakhne/ubuntu precise-arakhne universe"

wget http://download.tuxfamily.org//arakhne/public.key -O - | sudo apt-key add -
apt-get install ia32-oracle-java7-jre

3

Đối với tôi nó hơi khác một chút. Đối với Ubuntu 12.04 LTS Chính xác (Máy tính để bàn):

  1. Tải xuống jre-*.tar.gz

  2. tar -zxvf jre-*.tar.gz

  3. mkdir /usr/lib/jvm/

  4. mv jre* /usr/lib/jvm/

  5. ln -s /usr/lib/jvm/jre*/bin/java /usr/bin/

Đó là tất cả.

Để chắc chắn rằng nó chính xác:

java -version

Nếu bạn muốn thêm trình cắm cho Firefox hoặc Chrome:

  1. mkdir ~/.mozilla/plugins

  2. ln -s /usr/lib/jvm/jre*/lib/i386/libnpjp2.so ~/.mozilla/plugins/

Lưu ý đặc biệt: Nếu bạn có cài đặt 64 bit mới, bạn có thể gặp lỗi sau khi chạy java -version

-bash: ./java: No such file or directory

Điều này được gây ra bởi sự phụ thuộc vào libc6-i386gói không được bao gồm trong mặc định trong 64 bit Ubuntu Desktop 12.04 LTS. Để cài đặt gói này, hãy chạy: sudo apt-get install libc6-i386


1
Các hướng dẫn bạn cung cấp để thêm plugin cho Firefox hoặc Chrome hoàn toàn không ảnh hưởng đến Chrome. Chrome không sử dụng nội dung của .mozillathư mục.
Eliah Kagan

3

Đây là một tập lệnh bash có thể giúp thiết lập các lựa chọn thay thế java:

#!/bin/bash

BIN_HOME="/usr/bin"
JVM_BIN_HOME="/usr/lib/jvm/jdk1.7.0_21/bin"

UPDATE_CMD="update-alternatives"
UPDATE_OPT="--install"
UPDATE_DEFAULT_PRIORITY=10

echo "Installing alternatives for Oracle JDK."
#echo "JAVA_BIN_HOME=$JAVA_BIN_HOME"
#echo "BIN_HOM=$BIN_HOME"
echo "All cmds in \"$JVM_BIN_HOME\" will be installed in \"$BIN_HOME\" with \"$UPDATE_CMD\""
echo

# 
# Calls update-alternatives.
# Param 1 is the java cmd name and optionally param 2 is the priority
# See 'man update-alternatives' for more information.
# 
function update_alt() {
    if [ -z "$2" -o "${2}xxx" = "xxx" ]; then
    echo "using default priority: $UPDATE_DEFAULT_PRIORITY"
    PRIORITY=$UPDATE_DEFAULT_PRIORITY
    else
    PRIORITY=$2
    fi

    EXEC="$UPDATE_CMD $UPDATE_OPT $BIN_HOME/$1 $1 $JVM_BIN_HOME/$1 $PRIORITY"
    echo $EXEC
    $EXEC
    return 0
}

for bin in $JVM_BIN_HOME/*
do
    if [ -x $bin ]; then
    cmd=$(basename $bin)

    if [ -x $BIN_HOME/$cmd ]; then
        echo "notice: alternative already installed, \"$cmd\""
        continue # Skip installation of alternative.
    fi

    echo "install alternative: $cmd"
    update_alt $cmd
    if [ ! -x $BIN_HOME/$cmd ]; then
        echo "error: failed to install alternative, \"$cmd\""
        exit 1
    fi
    fi
done

exit 0

3

Giải pháp đơn giản

Thay vì tải xuống .tar.gzgói tôi khuyên bạn nên tải .rpmgói. Sau đó chạy:

sudo apt-get install alien dpkg-dev debhelper build-essential
sudo alien --scripts jdk-7u-linux-.rpm 

nơi tôi tin rằng hiện tại <build>là 21 và <version>phụ thuộc vào kiến ​​trúc hệ thống của bạn.

Đầu tiên sẽ cài đặt Alien, một ứng dụng để chuyển đổi .rpmthành .deb. Lệnh thứ hai sau đó chạy Alien trên gói jdk. Điều này sẽ chạy trong một hoặc hai phút và tạo ra một tệp có nhãn:

jdk-7u<build>-linux-<version>.deb

Gói này sau đó có thể được cài đặt bằng cách chạy:

sudo dpkg -i jdk-7u<build>-linux-<version>.deb

Đây là cách tôi cài đặt thành công nó trên máy của tôi.


1
Điều này sẽ cập nhật các lựa chọn thay thế? có lẽ chỉ sao chép các tập tin.
DavidG

3

Tôi nghĩ rằng phương pháp tốt nhất đã được đăng nhưng tôi gặp một số vấn đề với điều này: cụ thể là tôi xóa java 'thủ công' khỏi update-alternativesvà sau đó tôi đã cố gắng thực hiện điều này

update-alternatives --install "/usr/bin/java/" "java" "/usr/lib/jvm/jre1.7.0_05/bin/java" 1

nhưng tôi vẫn tiếp tục nhận được lỗi này

cập nhật thay thế: sử dụng /usr/lib/jvm/jre1.7.0_05/bin/java để cung cấp / usr / bin / java / (java) trong chế độ tự động. cập nhật thay thế: lỗi: không thể tạo /usr/bin/java/.dpkg-tmp một liên kết tượng trưng đến / etc / thay thế / java: Không có tệp hoặc thư mục như vậy

Nhưng may mắn thay, tôi đã gặp một hướng dẫn tuyệt vời trên trang web này: http://www.webupd8.org/2012/01/install-oracle-java-jdk-7-in-ub Ubuntu-via.html và nó hoạt động rất tốt :)


Sẽ là tốt nhất nếu bạn đăng thông tin cần thiết ở đây (để đưa ra câu trả lời khép kín).
Peter Mortensen

/usr/bin/javakhông phải là một thư mục, đó là lý do tại sao lỗi
Anwar

2

Phương pháp tốt nhất mà tôi có thể cung cấp nếu bạn muốn cài đặt Java 6 trong Ubuntu 12.04 LTS (Precise Pangolin) là:

sudo apt-get purge sun-java

Bạn cần phải làm điều đó nếu bạn muốn plugin Mozilla hoạt động mà không xung đột với Java 7 chẳng hạn.

mkdir ~/src

cd ~/src
git clone https://github.com/flexiondotorg/oab-java6.git
cd ~/src/oab-java6
sudo ./oab-java.sh

Sau đó, khi nó kết thúc, cài đặt Java:

sudo apt-get install sun-java6-plugin sun-java6-jre sun-java6-bin sun-java6-jdk

Bạn có thể làm theo quy trình cài đặt với:

tail -f ~/src/oab-java6/oab-java.sh.log

Giải trình : giống như trong câu trả lời cho Làm cách nào tôi có thể cài đặt Java JDK 6/7/8 hoặc JRE độc quyền của Sun / Oracle? .

Tham khảo : Cài đặt JDK Java6 trên Ubuntu 12.04


2

Đối với tôi, cách Debian (sic) sẽ là tạo gói của riêng bạn.

Bạn cài đặt java-package

sudo apt-get install java-package

Bạn tải về kho lưu trữ tar.gz của Oracle.

Bạn tạo gói gỡ lỗi của bạn

fakeroot make-jpkg jdk-7u79-linux-x64.tar.gz

Bạn cài đặt nó

sudo dpkg -i oracle-java7-jdk_7u79_amd64.deb

2

Tải xuống .tar.gzphiên bản JDK mong muốn của bạn cho hệ thống Ubuntu của bạn http://oracle.com, ví dụ:jdk-8u102-linux-x64.tar.gz .

Trích xuất nó đến bất cứ nơi nào bạn muốn trong /homethư mục, ví dụ /home/dante/Programs/Java. Bây giờ chúng ta có một thư mục với tên như jdk1.8.0_102bên trong /home/dante/Programs/Java.

Thêm hai dòng này vào /home/dante/.profiletập tin của bạn

export JAVA_HOME=/home/dante/Programs/Java/jdk1.8.0_102
export PATH=$JAVA_HOME/bin:$PATH

Khởi động lại hệ thống của bạn và sau khi khởi động lại, bạn sẽ thấy phiên bản Java của mình bằng cách chạy java -versiontrong thiết bị đầu cuối.


2

Tôi không biết tại sao mọi người lại đưa ra nhiều câu trả lời lớn như vậy nhưng việc thêm jdk / bin vào PATH vẫn hoạt động tốt: -

Thêm bạn jdk/binvào PATH như đã nói ở đây trong trường hợp của tôi đây là cách tôi /etc/environmentnhìn: -

   $ cat /etc/environment     
   PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/jdk-9.0.1/bin"    
   JAVA_HOME="/opt/jdk-9.0.1/"

1

Để cài đặt Sun Java 6 trên Chính xác thông qua Trusty, bạn có thể sử dụng các gói Lưu trữ chính / Đối tác đã xóa được bảo quản PPA.

sudo add-apt-repository ppa:maxb/preserved
sudo apt-get update
sudo apt-get install sun-java6-jre
sudo update-alternatives --config java

Và sau đó chọn phiên bản Java mong muốn. Bạn có thể kiểm tra những gì bạn đang chạy bằng:

geek@liv-inspiron:/tmp$ java -version
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02, mixed mode)

1

Cài đặt Oracle Java (JDK / JRE):

Bạn có thể tự động hóa tác vụ cài đặt / gỡ cài đặt Oracle Java (JDK / JRE) từ nguồn được tải xuống (tar.gz) với tập lệnh này: oraji .

Các bước:

  1. Tải xuống nguồn tar.gz của phiên bản jdk / jre mong muốn của bạn.
  2. chạy sudo oraji /path/to/the/jdk_or_jre/archive

Gỡ cài đặt:

chạy sudo oraji -uvà xác nhận phiên bản jdk / jre sẽ được gỡ cài đặt.


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.