วิธีการติดตั้ง Java ด้วย Apt บน Ubuntu 20.04

Java และ JVM (เครื่อง virtual ของ Java) จำเป็นสำหรับซอฟต์แวร์หลายประเภท ได้แก่ Tomcat, Jetty, Glassfish, Cassandra และ Jenkins ในคู่มือนี้ จะเป็นการติดตั้ง Java Runtime Environment (JRE) และ Java Developer Kit (JDK) เวอร์ชันต่างๆ โดยใช้ apt จาก Oracle

การติดตั้ง JRE/JDK เริ่มต้น

ตัวเลือกที่ง่ายที่สุดในการติดตั้ง Java คือการใช้เวอร์ชันที่มาพร้อมกับ Ubuntu ตามค่าเริ่มต้น Ubuntu 20.04 จะมี Open JDK 11 ซึ่งเป็นเวอร์ชัน open-source ของ JRE และ JDK

หากต้องการติดตั้งเวอร์ชันนี้ ให้อัปเดตระบบก่อน

sudo apt update

จากนั้นตรวจสอบว่าติดตั้ง Java ไว้แล้วหรือไม่

java -version

หากไม่ได้ติดตั้ง Java คุณจะเห็นผลลัพธ์ต่อไปนี้

ใช้คำสั่งต่อไปนี้เพื่อติดตั้ง Java Runtime Environment (JRE) เริ่มต้นซึ่งจะติดตั้ง JRE จาก OpenJDK 11

sudo apt install default-jre

JRE จะช่วยให้สามารถรันซอฟต์แวร์ Java เกือบทั้งหมดได้

สามารถตรวจสอบการติดตั้งด้วย

java -version

จะเห็นผลลัพธ์ที่คล้ายกับภาพต่อไปนี้

อาจต้องใช้ Java Development Kit (JDK) นอกเหนือจาก JRE เพื่อ compile และรันซอฟต์แวร์ที่ใช้ Java บางตัว หากต้องการติดตั้ง JDK ให้รันคำสั่งต่อไปนี้ ซึ่งจะติดตั้ง JRE ด้วย

sudo apt install default-jdk

ตรวจสอบว่าติดตั้ง JDK แล้ว โดยการตรวจสอบเวอร์ชันของ javac ซึ่งเป็น compiler Java

javac -version

จะเห็นผลลัพธ์ต่อไปนี้

การติดตั้ง Oracle JDK 11

ข้อตกลงเกี่ยวกับสิทธิ์การใช้งานของ Oracle สำหรับ Java นั้นไม่อนุญาตให้ติดตั้งอัตโนมัติผ่านตัวจัดการแพ็คเกจ หากต้องการติดตั้ง Oracle JDK ซึ่งเป็นเวอร์ชันอย่างเป็นทางการที่เผยแพร่โดย Oracle ต้องสร้างบัญชี Oracle และดาวน์โหลด JDK ด้วยตนเองเพื่อเพิ่มพื้นที่เก็บข้อมูลแพ็กเกจใหม่สำหรับเวอร์ชันที่ต้องการใช้ จากนั้นสามารถใช้ apt เพื่อติดตั้งด้วยสคริปต์การติดตั้งของ 3rd Party เวอร์ชันของ JDK ของ Oracle ที่คุณต้องดาวน์โหลดจะต้องตรงกับเวอร์ชันของสคริปต์ตัวติดตั้ง โดยการตรวจสอบเวอร์ชั่นที่ต้องการติดตั้งให้ไปที่ oracle-java11-installer

ในภาพนี้ เวอร์ชันของสคริปต์คือ 11.0.4 ในกรณีนี้ คุณจะต้องใช้ Oracle JDK 11.0.4 หมายเลขเวอร์ชันอาจแตกต่างกันไปขึ้นอยู่กับว่าคุณต้องการติดตั้งซอฟต์แวร์เวอร์ชั่นไหน และไม่จำเป็นต้องดาวน์โหลดอะไรจากหน้านี้  จากนั้นไปที่หน้าดาวน์โหลด และค้นหาเวอร์ชันที่ตรงกับที่คุณต้องการ คลิกปุ่มดาวน์โหลด JDK แล้วจะเข้าสู่หน้าจอที่แสดงเวอร์ชันที่มี คลิกแพ็คเกจ .tar.gz สำหรับ Linux

เมื่อคลิกดาวน์โหลด จะเห็นหน้าจอขอให้ยอมรับข้อตกลงตามใบอนุญาตของ Oracle เลือกช่องทำเครื่องหมายเพื่อยอมรับข้อตกลงแล้วกดปุ่มดาวน์โหลด การดาวน์โหลดจะเริ่มต้นขึ้น ซึ่งอาจต้องเข้าสู่ระบบบัญชี Oracle ก่อนถึงจะสามารถดาวน์โหลดได้

เมื่อดาวน์โหลดไฟล์แล้ว จะต้องโอนไฟล์ไปยังเซิร์ฟเวอร์บนเครื่องของคุณ บน macOS, Linux หรือ Windows ที่ใช้ระบบย่อย Windows สำหรับ Linux ให้ใช้คำสั่ง scp เพื่อถ่ายโอนไฟล์ไปยังโฮมไดเร็กทอรีของผู้ใช้ ในที่นี่ผู้ใช้มีชื่อว่า  john คำสั่งต่อไปนี้จะถือว่าคุณได้บันทึกไฟล์ Oracle JDK ลงในโฟลเดอร์ดาวน์โหลดของเครื่องของคุณ

scp Downloads/jdk-11.0.4_linux-x64_bin.tar.gz john@your_server_ip:~

เมื่อการอัปโหลดไฟล์เสร็จสิ้น ให้กลับไปที่เซิร์ฟเวอร์และเพิ่มพื้นที่เก็บข้อมูลของ 3rd Party ที่จะช่วยให้ติดตั้ง Java ของ Oracle

ติดตั้งแพ็คเกจ software-properties-common ซึ่งจะเพิ่มคำสั่ง add-apt-repository ให้กับระบบ

sudo apt install software-properties-common

จากนั้นเข้ารหัสเพื่อยืนยันซอฟต์แวร์ที่กำลังจะติดตั้ง

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EA8CACC073C3DB2A

จะเห็นผลลัพธ์ดังนี้

จากนั้นใช้คำสั่ง add-apt-repository เพื่อเพิ่ม repo ลงในแพ็กเกจ

sudo add-apt-repository ppa:linuxuprising/java

จะได้ผลลัพธ์ดังนี้

กด ENTER เพื่อดำเนินการติดตั้งต่อ และอาจเห็นข้อความว่าไม่พบข้อมูล OpenPGP ที่ถูกต้อง ซึ่งเราสามารถเพิกเฉยต่อสิ่งนี้ อัพเดตรายการแพ็กเกจของคุณเพื่อให้ซอฟต์แวร์ใหม่พร้อมสำหรับการติดตั้ง

sudo apt update

โปรแกรมติดตั้งจะค้นหา Oracle JDK ที่คุณดาวน์โหลดใน /var/cache/oracle-jdk11-installer-local สร้างไดเร็กทอรีนี้และย้ายไฟล์เก็บถาวร Oracle JDK ไปที่นั่น

sudo mkdir -p /var/cache/oracle-jdk11-installer-local/
sudo cp jdk-11.0.4_linux-x64_bin.tar.gz /var/cache/oracle-jdk11-installer-local/

สุดท้ายให้ติดตั้งแพ็คเกจ

sudo apt install oracle-java11-installer-local

โปรแกรมติดตั้งจะขอให้ยอมรับข้อตกลงใบอนุญาตของ Oracle ก่อน ยอมรับข้อตกลง จากนั้นตัวติดตั้งจะแตกแพ็คเกจ Java และติดตั้ง

ตอนนี้เรามาดูวิธีเลือกเวอร์ชันของ Java ที่คุณต้องการใช้

การจัดการ Java

เราสามารถมีการติดตั้ง Java ได้หลายรายการบนเซิร์ฟเวอร์เดียว โดยกำหนดค่าเวอร์ชันที่เป็นค่าเริ่มต้นสำหรับใช้ในบรรทัดคำสั่งได้โดยใช้คำสั่ง update-alternatives

sudo update-alternatives --config java

นี่คือลักษณะผลลัพธ์หากคุณได้ติดตั้ง Java ทั้งสองเวอร์ชันในคู่มือนี้ เลือกหมายเลขที่เกี่ยวข้องกับเวอร์ชัน Java เพื่อใช้เป็นค่าเริ่มต้น หรือกด ENTER เพื่อคงการตั้งค่าปัจจุบันไว้

เราสามารถทำเช่นนี้กับคำสั่ง Java อื่นๆ เช่น compiler (javac)

sudo update-alternatives --config javac

คำสั่งอื่นๆ ที่สามารถรันคำสั่งนี้ได้รวมถึงแต่ไม่จำกัดเฉพาะ: keytool, javadoc และ jarsigner

การตั้งค่าตัวแปร JAVA_HOME Environment 

หากต้องการตั้งค่าตัวแปร Environment นี้ ขั้นแรกให้กำหนดตำแหน่งที่ติดตั้ง Java ใช้คำสั่ง update-alternatives

sudo update-alternatives --config java

ในกรณีนี้ เส้นทางการติดตั้งจะเป็นดังนี้

  • OpenJDK 11 อยู่ที่ /usr/lib/jvm/java-11-openjdk-amd64/bin/java
  • Oracle Java อยู่ที่ /usr/lib/jvm/java-11-oracle/jre/bin/java

คัดลอกเส้นทางจากการติดตั้งที่คุณต้องการ จากนั้นเปิด /etc/environment โดยใช้ nano หรือโปรแกรมแก้ไขข้อความที่คุณชื่นชอบ

sudo nano /etc/environment
JAVA_HOME="/usr/lib/jvm/java-11-openjdk-amd64"

การแก้ไขไฟล์นี้จะกำหนดเส้นทาง JAVA_HOME สำหรับผู้ใช้ทุกคนในระบบ หากดำเนินการเรียบร้อยแล้วให้บันทึกไฟล์และออกจากโปรแกรมแก้ไข

ตอนนี้ให้โหลดไฟล์นี้ใหม่เพื่อใช้การเปลี่ยนแปลงกับเซสชันปัจจุบันของคุณ

source /etc/environment

ตรวจสอบว่ามีการตั้งค่าตัวแปร Environment แล้ว

echo $JAVA_HOME

ผู้ใช้รายอื่นจะต้องดำเนินการคำสั่ง source /etc/environment หรือออกจากระบบและเข้าสู่ระบบกลับเพื่อใช้การตั้งค่านี้

Was this article helpful?

Related Articles