ฉันติดตั้ง Java แล้วและพยายามติดตั้ง NetBeans 11.3 บน Windows 10 ของฉัน แต่หลังจากฉันรัน exe ตัวติดตั้งเกิดข้อผิดพลาดโผล่ขึ้นมา:
มีข้อยกเว้นที่ไม่คาดคิดเกิดขึ้นในเธรด main java.lang.NoClassDefFoundError java / util / jar / Pack200
ฉันติดตั้ง Java แล้วและพยายามติดตั้ง NetBeans 11.3 บน Windows 10 ของฉัน แต่หลังจากฉันรัน exe ตัวติดตั้งเกิดข้อผิดพลาดโผล่ขึ้นมา:
มีข้อยกเว้นที่ไม่คาดคิดเกิดขึ้นในเธรด main java.lang.NoClassDefFoundError java / util / jar / Pack200
คำตอบ:
NetBeans มีปัญหากับ jdk-14 เพราะฉันคิดว่าคุณติดตั้ง jdk-14 แล้วให้ถอนการติดตั้งแล้วลองกับ jdk-13.0.2
ขออภัยในความคิดของฉันคือการติดตั้งรุ่นเก่าจาก Java ไม่มีวิธีแก้ปัญหาเพียงเพราะมันใช้งานได้ เมื่อใครบางคนมีปัญหากับไฟร์วอลล์ของเขาเพียงแค่ปิดการใช้งานไฟร์วอลล์ก็จะไม่มีวิธีแก้ปัญหา
https://www.java.com/th/download/faq/other_jreversions.xml
เราขอแนะนำให้ผู้ใช้ลบ Java เวอร์ชันเก่าทั้งหมดออกจากระบบของคุณ การรักษา Java เวอร์ชันเก่าและไม่ได้รับการสนับสนุนบนระบบของคุณจะมีความเสี่ยงด้านความปลอดภัยที่ร้ายแรง การลบ Java เวอร์ชันเก่าออกจากระบบของคุณทำให้มั่นใจได้ว่าแอปพลิเคชัน Java จะทำงานด้วยการปรับปรุงความปลอดภัยและประสิทธิภาพการทำงานที่ทันสมัยที่สุดในระบบของคุณ
โซลูชัน "ของจริง" จะเป็นการจำลองโปรแกรมติดตั้ง NetBeans ฟังก์ชั่นที่ใช้นี้ถูกแนะนำสำหรับการคัดค้านเมื่อวันที่ 2018-04-04 ซึ่งทำเมื่อวันที่ 2018-08-23
https://bugs.java.com/bugdatabase/view_bug.do?bug_id=8200752
แนะนำให้ทำการลบใน 2019-10-08 ซึ่งดำเนินการในปี 2019-12-18
https://bugs.java.com/bugdatabase/view_bug.do?bug_id=JDK-8232022
https://bugs.java.com/bugdatabase/view_bug.do?bug_id=JDK-8232022
เราคิดว่านักพัฒนาที่พึ่งพา Pack200 ได้มีการแจ้งเตือนอย่างเพียงพอเกี่ยวกับการนำออกที่เสนอเพื่อทำการเตรียมทางเลือก …เราสันนิษฐานว่านักพัฒนาซอฟต์แวร์ที่ใช้pack200
เพื่อย่อ JAR ของแอปพลิเคชันสามารถสลับไปที่jlink
เครื่องมือหรือjpackage
เครื่องมือเพื่อสร้างรันไทม์เฉพาะแอปพลิเคชันด้วยฟอร์มแฟคเตอร์ที่เหมาะสมที่สุด
แก้ไข: ฉันแก้ไขด้วยวิธีนี้
ตอนนี้ NetBeans ทำงานกับ JDK 14
https://netbeans.apache.org/download/nb113/nb113.htmlเว็บไซต์ขณะนี้มีการบันทึกนี้:
โปรแกรมติดตั้งจะไม่ทำงานภายใต้ JDK 14 เนื่องจากการใช้งานทำจาก Pack200 Tools และ API สำหรับการบรรจุและแกะออกซึ่งถูกลบใน JDK 14 ดู JEP 367
ใช่ฉันได้มันทำงานจาก cmd เมื่ออ้างอิงถึงรุ่นเก่า: Apache-NetBeans-11.3-bin-windows-x64.exe --javahome "C: \ Program Files \ Java \ jdk-12.0.2"
อีกทางเลือกหนึ่งของ Andy
(Windows)
1) คลิกขวาที่โปรแกรมติดตั้ง "Apache-NetBeans-11.3-bin-windows-x64" และเลือก "สร้างทางลัด"
2) คลิกขวาที่ทางลัดที่สร้างขึ้นแล้วเลือก "Properties"
3) ในช่องข้อความ "เป้าหมาย" ให้เพิ่มพา ธ เวอร์ชัน JDK ของคุณที่ต่ำกว่า 14 อันในตอนท้ายนี่คือลักษณะของฉัน:
C: \ Users \ ชื่อผู้ใช้ \ เดสก์ทอป \ Apache-NetBeans-11.3-bin-windows-x64.exe --javahome "C: \ Program Files \ Java \ jdk-13"
4) กด Ok เมื่อเสร็จแล้วดับเบิลคลิกที่ทางลัดและควรติดตั้งได้ทันที
การเปลี่ยนมาใช้ openJDK 12 ก็เหมาะกับฉันเช่นกัน แต่แทนที่จะถอนการติดตั้ง JDK หรือเปลี่ยน env ด้วยตนเองฉันใช้Sdkman.ioซึ่งทำงานเหมือน Node version manager ถ้าคุณใช้มัน มันจัดการ JDKS ของคุณสำหรับคุณและเสนอการดาวน์โหลดรุ่นต่าง ๆ (เปิด, ซูลู, Graals) และจะสลับระหว่างพวกเขาด้วยคำสั่งด่วน