Java Runtime Environment (JRE) เป็นส่วนที่ใช้สำหรับรันโปรแกรม Java โดยแต่ละเวอร์ชันจะรองรับระบบปฏิบัติการแตกต่างกัน ทั้ง Windows และ macOS หากเลือกเวอร์ชันไม่เหมาะสม อาจทำให้ติดตั้งไม่ได้หรือโปรแกรมทำงานผิดปกติ
หมายเหตุ: การรองรับด้านล่างเป็นภาพรวมของ Oracle/OpenJDK โดยการรองรับจริงอาจแตกต่างกันเล็กน้อยตามผู้จัดจำหน่าย (Oracle, Eclipse Temurin, Azul, Amazon Corretto เป็นต้น)
Java 8 (JRE 8)
เป็นเวอร์ชันที่ได้รับความนิยมมากที่สุดสำหรับโปรแกรม Desktop และยังถูกใช้งานในหลายองค์กร
Windows
รองรับ
- Windows XP (รองรับถึง Java 8 Update 152/161 และบาง Update)
- Windows Vista
- Windows 7
- Windows 8
- Windows 8.1
- Windows 10
- Windows 11
มีทั้ง
- 32-bit (x86)
- 64-bit (x64)
เหมาะสำหรับโปรแกรมที่ต้องการรองรับ Windows รุ่นเก่า
macOS
รองรับ
- OS X 10.7 Lion
- OS X 10.8 Mountain Lion
- OS X 10.9 Mavericks
- OS X 10.10 Yosemite
- OS X 10.11 El Capitan
- macOS Sierra (10.12)
- macOS High Sierra (10.13)
Java 11 (LTS)
เป็น Long-Term Support รุ่นแรกหลัง Java 8
Windows
รองรับ
- Windows 7
- Windows 8.1
- Windows 10
- Windows 11
ไม่รองรับ Windows XP และ Windows Vista
macOS
รองรับ
- macOS High Sierra (10.13)
- Mojave (10.14)
- Catalina (10.15)
- Big Sur (11)
- Monterey (12)
- Ventura (13)
- Sonoma (14)
- Sequoia (15)
Java 17 (LTS)
เป็นเวอร์ชันที่ได้รับความนิยมในปัจจุบัน
Windows
รองรับ
- Windows 10
- Windows 11
บางผู้พัฒนา JDK ยังรองรับ Windows 8.1 แต่ไม่รองรับ Windows XP, Vista และ Windows 7
macOS
รองรับ
- Catalina (10.15)
- Big Sur (11)
- Monterey (12)
- Ventura (13)
- Sonoma (14)
- Sequoia (15)
รองรับทั้ง Intel และ Apple Silicon (M1, M2, M3, M4)
Java 21 (LTS)
เป็นเวอร์ชัน LTS รุ่นล่าสุดที่ได้รับความนิยมในการพัฒนาโปรแกรมใหม่
Windows
รองรับ
- Windows 10
- Windows 11
ไม่มีรุ่นสำหรับ Windows XP, Vista, Windows 7 และ Windows 8
macOS
รองรับ
- Big Sur (11)
- Monterey (12)
- Ventura (13)
- Sonoma (14)
- Sequoia (15)
รองรับทั้ง Intel และ Apple Silicon
ตารางสรุปการรองรับ
| Java | Windows XP | Vista | 7 | 8 / 8.1 | 10 | 11 | macOS รุ่นเก่า | macOS รุ่นใหม่ |
|---|---|---|---|---|---|---|---|---|
| Java 8 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | บางรุ่น |
| Java 11 | ✘ | ✘ | ✔ | ✔ | ✔ | ✔ | จำกัด | ✔ |
| Java 17 | ✘ | ✘ | ✘ | บางผู้พัฒนา | ✔ | ✔ | ✘ | ✔ |
| Java 21 | ✘ | ✘ | ✘ | ✘ | ✔ | ✔ | ✘ | ✔ |
ควรเลือก JRE เวอร์ชันใด
หากต้องการรองรับ Windows XP
แนะนำ
- Java 8 Update 152 (32-bit)
- Java 8 Update 161
เหมาะสำหรับโปรแกรมที่ต้องใช้งานกับเครื่องรุ่นเก่า
หากรองรับ Windows 7 ขึ้นไป
แนะนำ
- Java 11 LTS
มีความปลอดภัยและประสิทธิภาพดีกว่า Java 8
หากพัฒนาโปรแกรมใหม่
แนะนำ
- Java 21 LTS
เป็นเวอร์ชันที่รองรับระยะยาว (Long-Term Support) และเหมาะกับระบบปฏิบัติการรุ่นปัจจุบัน
สรุป
- Java 8 เหมาะสำหรับโปรแกรมที่ต้องรองรับ Windows XP, Windows 7 และระบบรุ่นเก่า
- Java 11 เหมาะสำหรับโปรแกรมที่รองรับ Windows 7 ขึ้นไป
- Java 17 เหมาะสำหรับองค์กรและโปรแกรม Desktop ในปัจจุบัน
- Java 21 เหมาะสำหรับการพัฒนาโปรแกรมใหม่ที่เน้นความทันสมัยและการรองรับระยะยาว
หากต้องการสร้างไฟล์ .exe ด้วย Launch4j แล้วให้โปรแกรมสามารถทำงานได้บน Windows XP ควรใช้ JRE 8 Update 152 (32-bit) ร่วมกับการ Bundle โฟลเดอร์ jre ไปพร้อมกับโปรแกรม เพื่อให้เครื่องปลายทางไม่จำเป็นต้องติดตั้ง Java เพิ่ม
