Minecraft launcher อาจแสดงปัญหา 'Internal Exception Java.IO.IOException' หากการติดตั้ง Minecraft เสียหายหรือเก่า นอกจากนี้ DNS cache ของระบบที่เสียหาย หรือการตั้งค่า Java ที่ไม่ถูกต้อง ก็อาจเป็นสาเหตุเช่นกัน
ปัญหาเกิดขึ้นเมื่อผู้ใช้พยายาม join หรือ connect เซิร์ฟเวอร์ แต่เจอข้อความ:
"Connection Lost Internal Exception: java.io.IOException: An existing connection was forcibly closed by the remote host"
ก่อนทำตามวิธีแก้ ให้ตรวจสอบว่าใช้ สายเครือข่ายอื่น (ถ้าใช้ ethernet) ช่วยได้หรือไม่ ถ้ามี username ยาว (7+ ตัวอักษร) ลองลดเหลือ (7 ตัวหรือน้อยกว่า) ดูว่าช่วยได้ไหม ตรวจสอบอีกว่า internet speed** ตรงตามข้อกำหนดขั้นต่ำของ Minecraft หรือไม่ ตรวจสอบให้แน่ใจว่า log out/disconnect Minechat (ถ้าใช้) แล้วปิดมัน ตรวจสอบอีกว่าเปิด Minecraft launcher (หรือ server) เป็น administrator** ช่วยได้หรือไม่
ซ่อมแซมไฟล์ที่เสียหาย
ดาวน์โหลดและรัน Restoro เพื่อสแกนและกู้คืนไฟล์ที่เสียหายและหายไปจาก ที่นี่ เสร็จแล้ว ดำเนินต่อไปกับวิธีแก้ด้านล่าง
วิธีแก้ 1: อัปเดต Minecraft Launcher เป็นบิลด์ล่าสุด
คุณอาจเจอ internal exception issue หาก Minecraft launcher ของระบบเก่า (ก่อให้เกิดความไม่เข้ากันระหว่าง launcher & server) ในบริบทนี้ การอัปเดต Minecraft launcher เป็นเวอร์ชันล่าสุดอาจช่วยแก้ปัญหา แต่ก่อนหน้านั้น ตรวจสอบว่าคุณมีมากกว่า 1 บัญชีที่ตั้งค่ากับ Minecraft launcher หรือไม่ ถ้ามี ให้ลบบัญชีอื่นๆ ทิ้ง เหลือแค่บัญชีเดียว
- เปิด Minecraft launcher** ใกล้ username คลิก Options
- คลิกปุ่ม Force Update ใช้งาน launcher update

- อัปเดตเสร็จ เปิด launcher ใหม่** ตรวจสอบว่าไม่มี IOexception error แล้วหรือไม่
- ถ้าไม่ได้ ตรวจสอบว่าใช้ launcher อื่น** ช่วยได้หรือไม่
วิธีแก้ 2: ล้าง DNS Cache ของระบบ
Java.io error อาจขึ้น หาก DNS cache ของระบบเสียหาย (ทำให้ระบบ resolve domain name ไม่ได้) ในบริบทนี้ การ flush DNS cache (ซึ่งจะบังคับให้ระบบ re-fetch combinations ใหม่) อาจช่วยแก้ปัญหา
- คลิก Windows พิมพ์ Command Prompt คลิกขวาที่ผลลัพธ์ Command Prompt เลือก Run as Administrator

- รันคำสั่งต่อไปทีละคำสั่ง:
ipconfig /flushdns ipconfig /release ipconfig /renew

- ออกจาก** Command Prompt ตรวจสอบว่า Java exception issue แก้แล้วหรือยัง
ถ้าปัญหายังคงอยู่ ตรวจสอบว่าเปลี่ยน DNS server (เช่น Google DNS) ช่วยแก้ internal exception issue ได้หรือไม่
วิธีแก้ 3: ปิด Server's Resource Pack
Resource packs ให้ผู้เล่นปรับแต่งได้มาก (เช่น textures, music, models, splash tests ฯลฯ) แตการปรับแต่งนี้อาจขวางการสื่อสาร client/server และก่อให้เกิด IOexception issue ในสถานการณ์นี้ การปิด server's resource pack อาจช่วยแก้ปัญหา
- เปิด Minecraft launcher** เลือก Multiplayer
- เลือก เซิร์ฟเวอร์ที่มีปัญหา** คลิก Edit

- คลิก Server Resource Packs ตั้งเป็น Disabled (ถ้าเปิดอยู่) คลิก Done

- ตรวจสอบว่า launcher ไม่มี Java.io issue แล้วหรือไม่
วิธีแก้ 4: ถอนติดตั้งแอปพลิเคชันที่ขัดแย้ง
คุณอาจเจอ Java.io issue หากมีแอปพลิเคชันบนระบบขวางการทำงานของ Minecraft ในสถานการณ์นี้ การลบแอปที่ขัดแย้งอาจช่วยแก้ปัญหา คุณสามารถ Clean Boot PC เพื่อหาแอปที่มีปัญหา ตัวอย่างนี้จะใช้ Hamachi VPN (รายงานโดยผู้ใช้ว่าก่อให้เกิดปัญหา)
- คลิกขวา Windows** เปิด Apps and Features
- คลิก LogMeIn Hamachi ขยาย แล้วคลิก Uninstall

- ปฏิบัติตามขั้นตอน** ลบ Hamachi และ รีสตาร์ท** คอมพิวเตอร์
- หลังบูท ตรวจสอบว่า IOexception issue แก้แล้วหรือยัง
วิธีแก้ 5: ลด Render Distance ในการตั้งค่า Minecraft
Internal exception issue อาจขึ้น หาก Minecraft render video blocks ไม่ทัน (เนื่องจาก internet speed ช้า) ในบริบทนี้ การลด Render Distance ในการตั้งค่า Minecraft ให้ต่ำที่สุดอาจช่วยแก้ปัญหา
- เปิด Minecraft Launcher** เปิด Options** (ยังควรลด Render Distance ใน server settings ถ้าเป็นไปได้)

- เลือก Video Settings** เลื่อน Render Distance** เป็น ต่ำที่สุด (เช่น 2)

- ตรวจสอบว่า Java.io issue แก้แล้วหรือไม่ ถ้าได้ คุณอาจเพิ่ม Render Distance ทีละ 1 จนถึงระดับที่ต้องการ

วิธีแก้ 6: แก้ไขการตั้งค่า Java
Java.io error อาจขึ้น หากการติดตั้ง Java ของระบบไม่ได้ตั้งค่าถูกต้อง ในบริบทนี้ การแก้ไข Java settings (เช่น เปิดใช้งาน Native Sandbox) อาจช่วยแก้ปัญหา แต่ก่อนเริ่ม ตรวจสอบให้แน่ใจว่าคุณมีการติดตั้ง Java เพียงตัวเดียว
อัปเดต Java เป็นบิลด์ล่าสุด
- คลิก Windows พิมพ์ Configure Java** แล้ว เปิด** มัน

- ไปที่แท็บ Update tab** คลิกปุ่ม Update Now

- ถ้ามีอัปเดต ใช้งาน** Java update ตรวจสอบว่า internal exception issue แก้แล้วหรือยัง
เปิดใช้งาน Native Sandbox
- คลิก Windows พิมพ์ Configure Java** เปิดมัน
- ไปที่แท็บ Advanced** ติ๊กถูก Enable the Operating System's Restricted Environment (Native Sandbox)

- ใช้การเปลี่ยนแปลง** และ รีสตาร์ท** คอมพิวเตอร์
- หลังบูท ตรวจสอบว่า Minecraft IOexception issue แก้แล้วหรือยัง
แก้ไข Java Path ใน Launcher Settings
- คลิกขวา Windows** เปิด Run
- นำทางไปที่ path:
\Program Files (x86)\

- เปิดโฟลเดอร์ Java** ไปที่ latest version of the Java installation (เช่นโฟลเดอร์ jre1.8.0_291)
- เปิดโฟลเดอร์ Bin** คัดลอกที่อยู่** จาก address bar

- เปิด Minecraft Launcher** เลือก Edit Profile
- ภายใต้ Java Settings (Advanced) ติ๊กถูก Executable
- วาง ที่อยู่ (คัดลอกขั้นตอนที่ 4) จนถึง Bin path จะประมาณนี้:
C:\Program Files (x86)\Java\jre1.8.0_291\bin\javaw.exe

- ใช้การเปลี่ยนแปลง** ตรวจสอบว่า internal exception issue แก้แล้วหรือยัง
ถ้าปัญหายังคงอยู่ ตรวจสอบว่า ติดตั้ง Java ใหม่** ช่วยแก้ IOexception issue ได้หรือไม่
วิธีแก้ 7: Repair / Reinstall Minecraft
Java.io issue อาจขึ้น หากการติดตั้ง Minecraft เสียหาย ในบริบทนี้ การ repair หรือ reinstall อาจช่วยแก้ปัญหา
- คลิก Windows พิมพ์ Control Panel** เปิดมัน

- เปิด Uninstall a Program** เลือก Minecraft

- คลิก Repair** ปฏิบัติตามขั้นตอน** repair Minecraft
- รีสตาร์ท** คอมพิวเตอร์ ตรวจสอบว่า IOexception issue แก้แล้วหรือยัง
- ถ้าไม่ได้ ถอนติดตั้ง Minecraft** และ Java** (สำรองข้อมูลสำคัญไว้)
- รีสตาร์ท** คอมพิวเตอร์ หลังบูท คลิกขวา Windows** เลือก Run
- นำทางไปที่ path (คัดลอก-วาง):
AppData

- เปิดแต่ละ directory** (Local, LocalLow, & Roaming) ทีละอัน ลบ Minecraft folders ในพวกมัน

- จากนั้น ดาวน์โหลด** เวอร์ชันล่าสุดของ Java** และ Minecraft**
- ติดตั้ง Java** เป็น administrator** รีสตาร์ท** คอมพิวเตอร์
- หลังบูท ติดตั้ง Minecraft** เป็น administrator** ตรวจสอบว่า internal exception issue แก้แล้วหรือยัง
วิธีแก้ 8: แก้ไขการตั้งค่าที่เกี่ยวกับเครือข่าย
Minecraft อาจแสดง internal exception issue หาก network settings ของระบบไม่ได้ตั้งค่าถูกต้อง (หรือ ISP บล็อกการเข้าถึงทรัพยากรที่จำเป็นสำหรับ Minecraft) ในกรณีนี้ การแก้ไข network settings (หรือลองเครือข่าย/VPN อื่น) อาจช่วยแก้ปัญหา
ลองเครือข่ายอื่นหรือ VPN
- ตัดการเชื่อมต่อ** ระบบจาก เครือข่ายปัจจุบัน** เชื่อมต่อ เครือข่ายอื่น** เช่น hotspot** ของโทรศัพท์ ดูว่าช่วยแก้ IOexception issue ได้หรือไม่ คุณยังสามารถลองใช้ VPN ได้ นอกจากนี้ การ สลับ** ระหว่าง Wi-Fi และ ethernet connection ก็เป็นความคิดที่ดี
- ถ้าปัญหายังคงอยู่ เชื่อมต่อตรง** ระบบกับอินเทอร์เน็ตโดยไม่ผ่าน router เพื่อแยกสาเหตุว่าการตั้งค่ามันก่อให้เกิดปัญหาหรือไม่
ปิด NAT Acceleration ในการตั้งค่า Router
- เปิด เว็บเบราว์เซอร์** นำทางไปที่ Router's control page
- เลือก LAN (ด้านซ้าย) ปิด Hardware Acceleration ในแท็บ Switch Control ถ้า Hardware Acceleration (ฟีเจอร์ของ router Asus) ไม่แสดง ให้หาชื่ออื่นๆ เช่น CTF (Cut-Through Forwarding) & FA (Flow Accelerator)

- ใช้การเปลี่ยนแปลง** ตรวจสอบว่า internal exception issue แก้แล้วหรือยัง
วิธีแก้ 9: แก้ไขการตั้งค่า Firewall
คุณอาจเจอ internal exception issue หาก Firewall ของระบบบล็อกการเข้าถึงทรัพยากรที่จำเป็นสำหรับ Minecraft ในบริบทนี้ การแก้ไข Firewall settings (เช่น อนุญาต Java (TM) Platform SE Binary ใน Firewall) อาจช่วยแก้ปัญหา ก่อนเริ่ม แนะนำเช็คว่าปิด firewall ชั่วคราวช่วยได้หรือไม่ ตัวอย่างจะใช้ Windows Defender Firewall
คำเตือน: ดำเนินการด้วยความเสี่ยงของตัวเอง การแก้ไข firewall settings เป็นงานที่ต้องมีทักษะ หากทำผิดอาจเปิดโอกาสให้ระบบ/ข้อมูลถูกคุกคาม
ตั้ง Java (TM) Platform SE เป็น Private ใน Firewall Settings
- คลิก Windows พิมพ์ Allow an App Through Windows Firewall** เปิดมัน

- คลิก Change Settings** ในรายการ Apps หา Java (TM) Platform SE Binary ถ้าไม่มี คลิก Allow Another App** นำทางไปที่ installation directory ของ Java (ปกติคือ Java directory ในโฟลเดอร์ Program Files และ Program Files (X86)) ดับเบิลคลิก** Javaw.exe

- เอาติ๊กออก** Public** ติ๊กถูก Private สำหรับ Java (TM) Platform SE Binary processes ทั้งหมด
- เลือก Java (TM) Platform SE Binary** คลิก Details
- เปิด Network Type** ติ๊กถูก Private
- ใช้การเปลี่ยนแปลง** รีสตาร์ท** คอมพิวเตอร์
- หลังบูท ตรวจสอบว่า IOexception issue แก้แล้วหรือยัง
อนุญาต Minecraft ผ่าน Firewall
- คลิก Windows พิมพ์ Firewall** เปิด Windows Defender Firewall

- ตรวจสอบว่า ไม่มี Inbound and Outbound rules** เกี่ยวกับ Minecraft ตั้งเป็น Block the Connection

- เลือก Inbound Rules** คลิก New Rule**

- เลือก Program** คลิก Next**

- คลิก Browse** นำทางไปที่ installation directory ของ Minecraft

- ดับเบิลคลิก** Minecraft.exe** เลือก Allow the Connection
- คลิก Next** เลือก ทั้ง 3 profiles** (Public, Private, Domain)
- ตั้งชื่อ** rule คลิก Finish
- ทำซ้ำ** สำหรับ Outbound Rule** และ รีสตาร์ท** คอมพิวเตอร์
- หลังบูท ตรวจสอบว่า Java.io issue แก้แล้วหรือยัง
ถ้าปัญหายังคงอยู่ ตรวจสอบว่า อนุญาตการเชื่อมต่อ Minecraft** ผ่าน router's Firewall** (ถ้ามี) ช่วยได้หรือไม่ (โดยเฉพาะถ้าใช้ autoblocking feature) ถ้ายังไม่ได้ ตรวจสอบว่า parental controls** ไม่บล็อกการเข้าถึง Minecraft นอกจากนี้ การให้แน่ใจว่า ports ถูก forward ถูกต้อง** ใน system/router firewall ตามที่ Minecraft ต้องการ ก็เป็นความคิดที่ดี
ถ้าปัญหายังคงอยู่ ตรวจสอบว่า จัดสรร RAM มากขึ้น** ให้ Minecraft ช่วยได้หรือไม่ ถ้ายังไม่ได้ คุณอาจติดต่อ server's admins** เพื่อลบ player data ของคุณ หรือเช็คปัญฝั่งเซิร์ฟเวอร์ ถ้าปัญหาไม่ได้แก้จนตอนนี้ คุณอาจต้อง factory reset** คอมพิวเตอร์ และถ้ายังไม่ได้ ให้นำระบบ (โดยเฉพาะ hard disk และ network/Wi-Fi card) ไป ตรวจสอบ hardware error**