Trang chủHướng dẫnCách cài đặt Java trên CentOS, Rocky Linux, RHEL và Fedora
Java

Cách cài đặt Java trên CentOS, Rocky Linux, RHEL và Fedora

CyStack blog 8 phút để đọc
CyStack blog17/08/2025
Locker Avatar

Bao Tran

Web Developer

Locker logo social
Reading Time: 8 minutes

Bài viết này sẽ hướng dẫn bạn cách cài đặt Java trên CentOS, Rocky Linux, RHEL và Fedora.

Hướng dẫn này bao gồm cách cài đặt phiên bản Java mới nhất, phiên bản Java mặc định, cách chọn cài đặt các phiên bản Java cũ hơn nếu cần, cũng như cách chuyển đổi giữa nhiều phiên bản Java trong môi trường của bạn.

Cách cài đặt Java trên CentOS, Rocky Linux

Điều kiện tiên quyết

Trước khi thực hiện hướng dẫn này, bạn cần có một tài khoản người dùng thông thường (không phải root) đã được cấp quyền sudo trên máy chủ. Đây là tài khoản bạn nên đăng nhập để thực hiện các bước trong hướng dẫn.

Bước 1: Cài đặt OpenJDK

Nền tảng Java có ba phiên bản chính: Standard Edition (SE), Enterprise Edition (EE)Micro Edition (ME). Hướng dẫn này tập trung vào Java SE (Java Platform, Standard Edition), vì hầu hết các phần mềm Java mã nguồn mở đều được thiết kế để chạy trên nền tảng này.

Có hai gói Java SE khác nhau có thể được cài đặt:

  • JRE (Java Runtime Environment): là bản cài đặt của JVM (Java Virtual Machine), cho phép bạn chạy các ứng dụng và applet Java đã được biên dịch.
  • JDK (Java Development Kit): bao gồm cả JRE và thêm các công cụ khác cần thiết để viết, phát triển và biên dịch ứng dụng Java.

Ngoài ra, còn có hai bản cài đặt Java khác nhau:

  • OpenJDK: là bản triển khai tham chiếu chính thức, hoàn toàn mã nguồn mở.
  • Oracle Java: dựa phần lớn trên cùng mã nguồn với OpenJDK, nhưng chứa một số thành phần độc quyền của Oracle.

Hầu hết các ứng dụng Java đều hoạt động tốt với cả hai, tuy nhiên bạn nên sử dụng bản cài đặt phù hợp với yêu cầu của phần mềm bạn đang sử dụng.

Bạn có thể cài đặt nhiều phiên bản và bản phát hành Java trên cùng một hệ thống, nhưng thông thường chỉ cần cài một phiên bản là đủ. Vì vậy, hãy cố gắng chỉ cài đặt phiên bản Java bạn thực sự cần để chạy hoặc phát triển ứng dụng.

Phần này sẽ hướng dẫn bạn cách cài đặt các gói OpenJDK JRE và JDK dựng sẵn bằng trình quản lý gói yum. yum là trình quản lý gói mặc định cho các bản phân phối Linux sử dụng định dạng RPM.

Để cài đặt OpenJDK bằng yum, bạn có thể chạy lệnh:

sudo yum install java

Mặc định, nếu bạn cố gắng cài đặt Java mà không chỉ định phiên bản cụ thể, hệ thống sẽ tự động chọn phiên bản ổn định phổ biến nhất của OpenJDK JRE để cài đặt. Như bạn có thể thấy trong kết quả đầu ra dưới đây, tại thời điểm viết hướng dẫn này, phiên bản đó là java-1.8.0-openjdk:

Output
Last metadata expiration check: 0:02:38 ago on Tue 22 Feb 2022 04:57:59 PM UTC.
Dependencies resolved.
========================================================================================
 Package                     Arch   Version                             Repo       Size
========================================================================================
Installing:
 java-1.8.0-openjdk          x86_64 1:1.8.0.322.b06-2.el8_5             appstream 341 k
Installing dependencies:
 alsa-lib                    x86_64 1.2.5-4.el8                         appstream 488 k
 atk                         x86_64 2.28.1-1.el8                        appstream 270 k
 avahi-libs                  x86_64 0.7-20.el8                          baseos     61 k
 copy-jdk-configs            noarch 4.0-2.el8                           appstream  29 k
 cups-libs                   x86_64 1:2.2.6-40.el8                      baseos    432 k
 fribidi                     x86_64 1.0.4-8.el8                         appstream  88 k
…

Nhiều dependencies cũng sẽ được cài đặt kèm theo Java. Khi có lời nhắc xác nhận, hãy nhập **y**rồi nhấn Enter để tiếp tục quá trình cài đặt. Ngoài ra, bạn cũng có thể được yêu cầu chấp nhận signing keys từ các kho lưu trữ mà bạn đang cài đặt từ đó:

Output
Importing GPG key 0x6D745A60:
 Userid     : "Release Engineering <infrastructure@rockylinux.org>"
 Fingerprint: 7051 C470 A929 F454 CEBE 37B7 15AF 5DAC 6D74 5A60
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-rockyofficial
Is this ok [y/N]:

Nhập y rồi nhấn Enter lần nữa.

Giờ đây bạn đã có một bản cài đặt Java hoạt động. Để xác nhận điều này, bạn có thể chạy lệnh java -version để kiểm tra phiên bản Java hiện đang có sẵn trong môi trường của bạn.

java -version

Lưu ý: Hầu hết các chương trình dòng lệnh sử dụng một dấu gạch ngang (–) trước các tham số một chữ cái, hoặc hai dấu gạch ngang (––) trước các tham số dạng từ đầy đủ. Tuy nhiên, Java sử dụng một dấu gạch ngang cho tất cả các tham số, kể cả khi đó là từ đầy đủ, ví dụ trong trường hợp này là -version.

Output
openjdk version "1.8.0_322"
OpenJDK Runtime Environment (build 1.8.0_322-b06)
OpenJDK 64-Bit Server VM (build 25.322-b06, mixed mode)

Sự tương tác giữa quy ước đặt tên của Java và quy ước đặt tên gói trên Linux đôi khi có thể gây nhầm lẫn. Ở phần trước của hướng dẫn, chúng ta đã phân biệt giữa môi trường JDK đầy đủ để phát triển và môi trường JRE để chạy các ứng dụng Java.

Mặc dù OpenJDK là tên của bản phân phối Java mã nguồn mở, nhưng bạn mới chỉ cài đặt OpenJDK JRE. Để cài đặt đầy đủ OpenJDK JDK, bạn cần cài đặt gói tương ứng có thêm hậu tố -devel ở cuối tên gói. Đây là một quy ước phổ biến dành cho các development packages trong nhiều môi trường lập trình khác, và Java cũng tuân theo quy ước này, dù rằng cách dùng thuật ngữ có phần chồng chéo, dễ gây nhầm lẫn.

Tương tự như trước, bạn có thể cài đặt java-devel để lấy phiên bản mặc định, hoặc chỉ định rõ phiên bản như java-1.8.0-openjdk-devel :

sudo yum install java-devel
Output
DigitalOcean Droplet Agent                               63 kB/s | 3.3 kB     00:00
Dependencies resolved.
========================================================================================
 Package                     Arch      Version                       Repository    Size
========================================================================================
Installing:
 java-1.8.0-openjdk-devel    x86_64    1:1.8.0.322.b06-2.el8_5       appstream    9.8 M

Transaction Summary
========================================================================================
Install  1 Package

Total download size: 9.8 M
Installed size: 41 M
Is this ok [y/N]:

Sau khi cài đặt gói này, bạn sẽ có một môi trường OpenJDK đầy đủ, cho phép biên dịch và chạy bất kỳ phần mềm Java nào miễn là phần mềm đó không gặp vấn đề về tương thích phiên bản. Trong phần tiếp theo, bạn sẽ học cách cài đặt và quản lý các phiên bản Java khác.

Bước 2: Cài đặt các phiên bản OpenJDK khác

Gần đây, OpenJDK đã thay đổi quy ước đánh số phiên bản để đồng bộ chặt chẽ hơn với các bản phát hành của Oracle Java. Để cài đặt một phiên bản OpenJDK mới hơn, bạn chỉ cần chỉ rõ số phiên bản trong tên gói, tương tự như cách làm với 1.8.0.

Ví dụ: để cài đặt OpenJDK 17, bạn có thể sử dụng lệnh:

yum install java-17-openjdk

sudo yum install java-17-openjdk
Output
Last metadata expiration check: 0:03:36 ago on Tue 22 Feb 2022 05:42:44 PM UTC.
Dependencies resolved.
========================================================================================
 Package                      Arch       Version                    Repository     Size
========================================================================================
Installing:
 java-17-openjdk              x86_64     1:17.0.2.0.8-4.el8_5       appstream     244 k
Installing dependencies:
 adwaita-cursor-theme         noarch     3.28.0-2.el8               appstream     646 k
 adwaita-icon-theme           noarch     3.28.0-2.el8               appstream      11 M
 at-spi2-atk                  x86_64     2.26.2-1.el8               appstream      88 k
 at-spi2-core                 x86_64     2.28.0-1.el8               appstream     168 k
 colord-libs                  x86_64     1.4.2-1.el8                appstream     234 k
 java-17-openjdk-headless     x86_64     1:17.0.2.0.8-4.el8_5       appstream      41 M
 lcms2                        x86_64     2.9-2.el8                  appstream     163 k
…

Tương tự như trước, bạn có thể cài đặt môi trường JDK đầy đủ bằng cách thêm hậu tố -devel vào tên gói. Tuy nhiên, sau khi cài đặt, khi bạn chạy các chương trình java, hệ thống vẫn sẽ sử dụng phiên bản OpenJDK 1.8.0 mà bạn đã cài trước đó làm mặc định. Bạn có thể xác nhận điều này bằng cách chạy lại lệnh:

java -version

java -version
Output
openjdk version "1.8.0_322"
OpenJDK Runtime Environment (build 1.8.0_322-b06)
OpenJDK 64-Bit Server VM (build 25.322-b06, mixed mode)

Trong bước tiếp theo, bạn sẽ quản lý các phiên bản Java đã được cài đặt.

Bước 3: Thiết lập phiên bản Java mặc định

Nếu bạn đã cài đặt nhiều phiên bản Java, có thể bạn sẽ muốn đặt một phiên bản làm mặc định (tức là phiên bản sẽ được sử dụng khi người dùng chạy lệnh java). Ngoài ra, một số ứng dụng còn yêu cầu thiết lập các biến môi trường cụ thể để xác định phiên bản Java mà chúng sẽ sử dụng.

Lệnh alternatives, công cụ quản lý các lệnh mặc định thông qua liên kết tượng trưng, có thể được sử dụng để chọn phiên bản Java mặc định. Để liệt kê các phiên bản Java hiện có mà alternatives có thể quản lý, hãy sử dụng lệnh:

alternatives --config java

sudo alternatives --config java

Kết quả đầu ra sẽ liệt kê cả hai phiên bản Java mà bạn đã cài đặt:

output
There are 2 programs which provide 'java'.

  Selection    Command
-----------------------------------------------
*+ 1           java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-2.el8_5.x86_64/jre/bin/java)
   2           java-17-openjdk.x86_64 (/usr/lib/jvm/java-17-openjdk-17.0.2.0.8-4.el8_5.x86_64/bin/java)

Enter to keep the current selection[+], or type selection number:

Nhập số tương ứng với phiên bản bạn muốn chọn làm mặc định. Hệ thống sẽ tự động sắp xếp lại các liên kết tượng trưng cần thiết để đảm bảo rằng lệnh java sẽ trỏ đến đúng thư viện của phiên bản bạn chọn.

Bạn có thể chạy lại lệnh này bất cứ khi nào cần thay đổi, và kết quả của lệnh java -version sẽ phản ánh phiên bản hiện tại đang được sử dụng.

java -version
Output
openjdk version "17.0.2" 2022-01-18 LTS
OpenJDK Runtime Environment 21.9 (build 17.0.2+8-LTS)
OpenJDK 64-Bit Server VM 21.9 (build 17.0.2+8-LTS, mixed mode, sharing)

Nhiều ứng dụng Java cũng sử dụng biến môi trường JAVA_HOME hoặc JRE_HOME để xác định phiên bản java nào sẽ được sử dụng.

Ví dụ, nếu bạn đã cài đặt Java tại đường dẫn

/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-2.el8_5.x86_64/jre/bin

(tức là file thực thi java nằm tại

/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-2.el8_5.x86_64/jre/bin/java),

bạn có thể thiết lập biến môi trường JAVA_HOME trong shell Bash hoặc trong một script như sau:

export JAVA_HOME=(/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-2.el8_5.x86_64/jre

Lưu ý: Biến môi trường JAVA_HOME thường yêu cầu bạn đặt đường dẫn đến thư mục cài đặt Java kết thúc bằng /jre. Tuy nhiên, quy ước này có thể khác nhau tùy theo biến môi trường hoặc ứng dụng sử dụng, vì vậy tốt nhất bạn nên kiểm tra kỹ các ví dụ cụ thể trước khi thực hiện thay đổi.

Nếu bạn muốn biến JAVA_HOME được thiết lập mặc định cho mọi người dùng trên hệ thống, hãy thêm dòng thiết lập này vào tệp /etc/environment. Bạn có thể sử dụng lệnh echo kết hợp với toán tử chuyển hướng >> để ghi thêm vào tệp, tránh việc phải chỉnh sửa thủ công bằng tay. Chạy lệnh sau:

sudo sh -c "echo export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-2.el8_5.x86_64/jre >> /etc/environment"

Trong bước tiếp theo, bạn sẽ cài đặt Java độc quyền của Oracle song song với các phiên bản OpenJDK đã có.

Bước 4: Cài đặt Oracle Java

Phần này của hướng dẫn sẽ chỉ cho bạn cách cài đặt Oracle Java JREJDK (64-bit), là phiên bản mới nhất của các gói này tại thời điểm viết bài.

Lưu ý: Nếu bạn đang sử dụng terminal tương tác trên trang web này, bạn sẽ không thể tải xuống và cài đặt Oracle Java trực tiếp trong môi trường đó.

Trong suốt phần này, chúng ta sẽ sử dụng lệnh wget để tải các gói phần mềm Oracle Java. Tuy nhiên, wget có thể không được cài sẵn trên bản phân phối Linux của bạn, vì vậy để tiếp tục làm theo hướng dẫn, bạn cần cài đặt bằng cách chạy lệnh:

sudo yum install wget

Bạn phải chấp nhận Thỏa thuận cấp phép mã nhị phân của Oracle dành cho Java SE, đây là một trong những bước bắt buộc, trước khi cài đặt Oracle Java.

Chuyển sang thư mục home của bạn và tải gói Oracle Java RPM bằng các lệnh sau:

cd ~
wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "<https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.rpm>"

Sau đó, cài đặt gói RPM bằng lệnh yum localinstall (nếu bạn đã tải xuống phiên bản khác, hãy thay thế tên tệp tương ứng ở đây):

sudo yum localinstall jdk-17_linux-x64_bin.rpm

Khi có lời nhắc xác nhận, nhập y rồi nhấn Enter để tiếp tục quá trình cài đặt.

Bạn có thể xóa tệp lưu trữ đã tải xuống trước đó.

rm ~/jdk-17_linux-x64_bin.rpm

Bây giờ bạn có thể chạy lại lệnh alternatives và bạn sẽ thấy tùy chọn thứ ba để sử dụng Oracle Java.

sudo alternatives --config java
output
There are 3 programs which provide 'java'.

  Selection    Command
-----------------------------------------------
   1           java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-2.el8_5.x86_64/jre/bin/java)
 + 2           java-17-openjdk.x86_64 (/usr/lib/jvm/java-17-openjdk-17.0.2.0.8-4.el8_5.x86_64/bin/java)
*  3           /usr/java/jdk-17.0.2/bin/java

Enter to keep the current selection[+], or type selection number:

Các bước trong hướng dẫn này là đủ để bạn có thể cài đặt và chạy bất kỳ phiên bản Java nào phù hợp với mục đích sử dụng của mình.

Kết luận

Trong hướng dẫn này, bạn đã cài đặt và quản lý nhiều phiên bản Java bằng cách sử dụng trình quản lý gói yum, lệnh alternatives và các biến môi trường. Đây đều là những khía cạnh cơ bản trong việc quản lý môi trường trên Linux, và Java là một ví dụ điển hình để thực hành chúng vì có nhiều phiên bản khác nhau.

0 Bình luận

Đăng nhập để thảo luận

Chuyên mục Hướng dẫn

Tổng hợp các bài viết hướng dẫn, nghiên cứu và phân tích chi tiết về kỹ thuật, các xu hướng công nghệ mới nhất dành cho lập trình viên.

Đăng ký nhận bản tin của chúng tôi

Hãy trở thành người nhận được các nội dung hữu ích của CyStack sớm nhất

Xem chính sách của chúng tôi Chính sách bảo mật.

Đăng ký nhận Newsletter

Nhận các nội dung hữu ích mới nhất