Cách cài đặt Java SDK trên CentOS?


99

Tôi có CentOS 5, nhưng tôi không biết các bước cài đặt Java SDK trên Linux.

Tải xuống tệp RPM ở đâu và tôi có thể làm gì tiếp theo để cài đặt đầy đủ tệp đó?

Sau đó, tôi cần cài đặt Tomcat .

Hoặc có gói làm sẵn nào cho tất cả không?


Tôi nghi ngờ rằng chúng ta cần phải bắt đầu rõ ràng khi chúng ta muốn nói đến Oracle Java, hoặc có thể chấp nhận một trong những lựa chọn thay thế nguồn mở. Sventek có một câu trả lời hay - nhưng sẽ không hữu ích nếu bạn có các công cụ với người bảo trì từ chối khắc phục sự cố cho đến khi được tái tạo trên các công cụ Oracle Java / JDK.
Danny Staple,

Câu trả lời:


164

Lệnh sau sẽ trả về danh sách tất cả các gói liên quan trực tiếp đến Java. Chúng sẽ có định dạng java-<version>.

$ yum search java | grep 'java-'

Nếu không có gói nào có sẵn, thì bạn có thể cần tải xuống một kho mới để tìm kiếm. Tôi khuyên bạn nên xem qua repo của Dag Wieers . Sau khi tải xuống, hãy thử lại lệnh trên.

Bạn sẽ thấy ít nhất một phiên bản của các gói Java có sẵn để tải xuống. Tùy thuộc vào thời điểm bạn đọc, phiên bản mới nhất hiện có có thể khác.

java-1.7.0-openjdk.x86_64

Riêng gói trên sẽ chỉ cài đặt JRE. Để cài đặt javacvà JDK, lệnh sau sẽ thực hiện thủ thuật:

$ yum install java-1.7.0-openjdk*

Các gói này sẽ được cài đặt (cũng như các gói phụ thuộc của chúng):

java-1.7.0-openjdk.x86_64
java-1.7.0-openjdk-accessibility.x86_64
java-1.7.0-openjdk-demo.x86_64
java-1.7.0-openjdk-devel.x86_64
java-1.7.0-openjdk-headless.x86_64
java-1.7.0-openjdk-javadoc.noarch
java-1.7.0-openjdk-src.x86_64

64
Đã thử nghiệm trên CentOS 6.5. sudo yum install java-1.7.0-openjdk.x86_64chỉ cài đặt JRE ( javacsẽ không có). sudo yum install java-1.7.0-openjdk-develcài đặt JDK.
Thamme Gowda

Tôi có thể xác nhận điều này cũng hoạt động trên các phiên bản CentOS cũ hơn (tôi vừa chạy yum installlệnh trên 5.6).
crmpicco

Sau khi cài đặt: cấu hình iptables trên centos 6.5 -> / etc / sysconfig / iptables -> -A INPUT -i eth0 -p tcp -m tcp --dport 8080 -m state --state MỚI, THÀNH LẬP -j CHẤP NHẬN
hpaknia

1
@ThammeGowdaN Tôi đã gửi bản chỉnh sửa bao gồm hướng dẫn của bạn.
onebree 14/09/15

1
Đã kiểm tra và xác nhận trên CentOS 7.
một

34

@Sventeck, hoàn hảo.

redhat docs luôn là một nguồn tuyệt vời - hướng dẫn hay giải thích cách cài đặt JDK qua yum và sau đó đặt đường dẫn có thể tìm thấy ở đây (chúc bạn vui vẻ!) - Cài đặt OpenJDK và đặt đường dẫn $ JAVA_HOME

OpenJDK 6:

yum install java-1.6.0-openjdk-devel

OpenJDK 7:

yum install java-1.7.0-openjdk-devel

Để liệt kê tất cả các gói java openjdk-devel có sẵn, hãy thử:

yum list "java-*-openjdk-devel"

1
Đã thử nghiệm trên CentOS 6.4, tôi xác nhận đó là cách "centos". Biến môi trường JAVA_HOME phải được đặt trên "/ etc / Alternatives / jre".
Emmanuel Keller

Gotta love me some centos! Biến này cũng có thể được lưu trữ trong / etc / environment, đây là nơi mà hầu hết các biến toàn cục của hệ thống sẽ tồn tại. echo JAVA_HOME="path/to/JAVA_HOME" >> /etc/environment
xpros


13

Trên centos 7, tôi chỉ làm

sudo yum install java-sdk

Tôi cho rằng bạn đã có hầu hết các repo phổ biến nhất. Centos chỉ tìm đúng SDK với tiền tố -devel.


10

Một câu trả lời thay thế là,

sudo yum list \*java-1\* | grep open 

hơn là chọn một từ danh sách và cài đặt

ví dụ,

sudo yum install java-1.7.0-openjdk.x86_64

6

Đây là thông tin chi tiết về cách thiết lập Java và các đường dẫn của nó trên CentOS6.

Các bước dưới đây là để cài đặt phiên bản Java 8 mới nhất:

  1. Tải xuống gói java rpm từ trang Oracle . ( jdk-8-linux-x64.rpm )
  2. Cài đặt từ vòng / phút. ( rpm -Uvh jdk-8-linux-x64.rpm )
  3. Mở / etc / profile , và đặt đường dẫn java, lưu nó.
  4. Kiểm tra đường dẫn cài đặt java và phiên bản java bằng các lệnh: which java , java -version

Bây giờ bạn có thể kiểm tra cài đặt bằng một chương trình java mẫu


3

Vì Oracle đã chèn một số md5hash trong liên kết tải xuống của họ, nên người ta không thể tự động lắp ráp liên kết tải xuống cho dòng lệnh.

Vì vậy, tôi đã mày mò một số dòng lệnh bash khó chịu để có được liên kết tải xuống jdk mới nhất, tải xuống và cài đặt trực tiếp qua rpm. Dành cho tất cả những ai quan tâm:

wget -q http://www.oracle.com/technetwork/java/javase/downloads/index.html -O ./index.html && grep -Eoi '] +>' index.html | grep -Eoi '/technetwork/java/javase/downloads/jdk8-downloads-[0-9]+.html' | (đầu -n 1) | awk '{print " http://www.oracle.com " $ 1}' | xargs wget --no-cookies --header "Cookie: gpw_e24 = xxx; oraclelicense = accept-securebackup-cookie;" -O index.html -q && grep -Eoi '"filepath": "[^"] + jdk-8u [0-9] + - linux-x64.rpm "' index.html | grep -Eoi 'http: [ ^ "] + '| xargs wget --no-cookies --header "Cookie: gpw_e24 = xxx; oraclelicense = accept-securebackup-cookie;" -q -O ./jdk8.rpm && sudo rpm -i ./jdk8.rpm

Phần in đậm nên được thay thế bằng gói bạn thích.


1
Hack chính chủ.
Aaron Altman

Tôi đã sử dụng cách tiếp cận tương tự trong tập lệnh bash để lấy liên kết tải xuống JRE và JDK mới nhất cho phiên bản 8 và 9. Bạn có thể tìm thấy câu trả lời trong chuỗi này dưới dạng câu trả lời .
U880D

2

Nếu bạn muốn Oracle JDK và không muốn sử dụng yum / rpm, hãy xem câu trả lời này tại đây:

Tải xuống Java JDK trên Linux qua wget được hiển thị trang giấy phép thay thế

Theo bài đăng đó, bạn có thể tự động tải xuống tarball bằng cách sử dụng curl và chỉ định tiêu đề cookie.

Sau đó, bạn có thể đặt nội dung tarball vào đúng vị trí và thêm java vào PATH của mình, ví dụ:

curl -v -j -k -L -H "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u45-b14/jdk-8u45-linux-x64.tar.gz > jdk.tar.gz

tar xzvf jdk.tar.gz
sudo mkdir /usr/local/java
sudo mv jdk1.8.0_45 /usr/local/java/
sudo ln -s /usr/local/java/jdk1.8.0_45 /usr/local/java/jdk

sudo vi /etc/profile.d/java.sh
export PATH="$PATH:/usr/local/java/jdk/bin"
export JAVA_HOME=/usr/local/java/jdk

source /etc/profile.d/java.sh

0

sử dụng các lệnh dưới đây để cài đặt oracle java8 thông qua terminal

Bước -1) Truy cập trang tải xuống Oracle JDK, tìm phiên bản RPM

Bước -2) Tải xuống oracle java 8 bằng lệnh dưới đây wget --header "Cookie: oraclelicense = accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u121-b13/e9e7ea248e2c4826b92b3f075a80e441 /jdk-8u121-linux-x64.rpm

Bước -3) Cài đặt java8 bằng lệnh dưới đây sudo yum localinstall jdk-8u121-linux-x64.rpm Bây giờ JDK sẽ được cài đặt tại /usr/java/jdk1.8.0_121 Bước -4) Xóa tệp .rpm đã tải xuống để sử dụng vũ trụ. rm jdk-8u121-linux-x64.rpm

Bước -5) Xác minh java bằng cách sử dụng lệnh java -version

Bước -6) Nếu CentOS đã cài đặt nhiều JDK, bạn có thể sử dụng lệnh thay thế để đặt các lựa chọn thay thế java sudo mặc định --config java

Bước -7) Tùy chọn đặt các biến Môi trường JAVA_HOME. sao chép đường dẫn của jdk install tức là /usr/java/jdk1.8.0_121 sử dụng lệnh dưới đây để xuất java home export JAVA_HOME = / usr / java / jdk1.8.0_121 export PATH = $ PATH: $ JAVA_HOME


0

Tôi đã viết một tập lệnh shell để cài đặt / gỡ cài đặt java trên centos. Bạn có thể hoàn thành nó bằng cách chạy shell. Cốt lõi của lớp vỏ này là:

1.download the jdk rpm(RedHat Package Manager) package.
2.install java using rpm.

Bạn có thể xem thêm chi tiết tại đây: https://github.com/daikaixian/WaterShell/tree/master/program_installer

Hi vọng nó sẽ giúp ích cho bạn.


0

nhập mô tả hình ảnh ở đây

Đây là những gì tôi đã làm:

  1. Đầu tiên, tôi tải xuống .tartệp cho Java JDK và JRE từ trang Oracle.

  2. Giải nén .tartệp vào thư mục opt.

  3. Tôi gặp phải một vấn đề là mặc dù đã đặt các biến môi trường của mình JAVA_HOMEPATHđối với Java 9, nó vẫn hiển thị Java 8 là môi trường thời gian chạy của tôi. Do đó, tôi đã liên kết biểu tượng từ thư mục Java 9.0.4 để /user/binsử dụng lnlệnh.

  4. Tôi đã sử dụng java -versionlệnh để kiểm tra phiên bản java hiện được đặt làm môi trường thời gian chạy java mặc định của tôi.


0

Để cài đặt OpenJDK 8 JRE bằng yum với người dùng không phải root, hãy chạy lệnh sau:

sudo yum cài đặt java-1.8.0-openjdk

để xác minh java -version

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.