วิธีแก้ไขข้อผิดพลาดขณะติดตั้ง NetBeans


13

ฉันติดตั้ง Java แล้วและพยายามติดตั้ง NetBeans 11.3 บน Windows 10 ของฉัน แต่หลังจากฉันรัน exe ตัวติดตั้งเกิดข้อผิดพลาดโผล่ขึ้นมา:

มีข้อยกเว้นที่ไม่คาดคิดเกิดขึ้นในเธรด main java.lang.NoClassDefFoundError java / util / jar / Pack200


2
ฉันสงสัยว่าคุณกำลังใช้ Java 14 ฉันมีความรู้สึกว่าพวกเขาลบ Pack200 ในรุ่นนั้น ลองกับ Java เวอร์ชันเก่ากว่า
mwarren

1
@mwarren นั่นไม่ใช่แค่ความรู้สึก: openjdk.java.net/jeps/367
Joachim Rohde

ใช้เวอร์ชันของ java ที่สนับสนุนโดยเวอร์ชันของเน็ตเบียนที่คุณมี
Thorbjørn Ravn Andersen

ตัวติดตั้ง NetBeans จะทำงานโดย JDK ของคุณที่ลงทะเบียนกับตัวแปรสภาพแวดล้อม "JAVA_HOME" หากคุณติดตั้ง JDK ไว้ก่อนหน้านี้คุณอาจชี้ "JAVA_HOME" ไปยัง pre-Java 14 JDK ใดก็ได้ชั่วคราวซึ่งจะไม่มีปัญหาในการติดตั้ง NetBeans หลังจากการติดตั้งเสร็จสิ้นคุณจะเปลี่ยน "JAVA_HOME" กลับไปเป็น JDK 14 หากคุณต้องการ
Peng

คำตอบ:


10

NetBeans มีปัญหากับ jdk-14 เพราะฉันคิดว่าคุณติดตั้ง jdk-14 แล้วให้ถอนการติดตั้งแล้วลองกับ jdk-13.0.2


ขอขอบคุณและทุกคนที่แสดงความคิดเห็นนี้! ฉันได้ติดตั้ง 12 แทนและ netbeans ทำงานได้ดี!
Clairexxp

โซลูชันนี้ควรใช้ร่วมกับโซลูชัน @Felistrix การใช้ JDK รุ่นเก่าไม่ใช่วิธีแก้ปัญหาที่ถูกต้อง ฉันเพิ่งทำสิ่งนี้และทุกอย่างทำงานได้ดีรวมทั้งฉันมี JDK ล่าสุด
รัสเซล Thackston

8

ขออภัยในความคิดของฉันคือการติดตั้งรุ่นเก่าจาก 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เครื่องมือเพื่อสร้างรันไทม์เฉพาะแอปพลิเคชันด้วยฟอร์มแฟคเตอร์ที่เหมาะสมที่สุด

แก้ไข: ฉันแก้ไขด้วยวิธีนี้

  1. ถอนการติดตั้ง JDK 14
  2. ติดตั้ง JDK 13.0.2
  3. ติดตั้ง Apache NetBeans
  4. ติดตั้ง JDK 14
  5. เปิด C: \ Program Files \ NetBeans \ netbeans \ etc \ netbeans.conf และเปลี่ยนพา ธ เป็น JDK
  6. ถอนการติดตั้ง JDK 13.0.2

ตอนนี้ NetBeans ทำงานกับ JDK 14


3

https://netbeans.apache.org/download/nb113/nb113.htmlเว็บไซต์ขณะนี้มีการบันทึกนี้:

โปรแกรมติดตั้งจะไม่ทำงานภายใต้ JDK 14 เนื่องจากการใช้งานทำจาก Pack200 Tools และ API สำหรับการบรรจุและแกะออกซึ่งถูกลบใน JDK 14 ดู JEP 367


2

ใช่ฉันได้มันทำงานจาก cmd เมื่ออ้างอิงถึงรุ่นเก่า: Apache-NetBeans-11.3-bin-windows-x64.exe --javahome "C: \ Program Files \ Java \ jdk-12.0.2"


1

หากมีการติดตั้ง JDK หลายเวอร์ชันคุณจะต้องกำหนดตัวแปรสภาพแวดล้อม "JAVA_HOME" ซึ่งจะกำหนดเส้นทางให้เป็น JDK-12 โดยมีรายละเอียดอธิบายไว้ที่นี่ (เฉพาะในรัสเซีย)


1

อีกทางเลือกหนึ่งของ 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 เมื่อเสร็จแล้วดับเบิลคลิกที่ทางลัดและควรติดตั้งได้ทันที


0

การเปลี่ยนมาใช้ openJDK 12 ก็เหมาะกับฉันเช่นกัน แต่แทนที่จะถอนการติดตั้ง JDK หรือเปลี่ยน env ด้วยตนเองฉันใช้Sdkman.ioซึ่งทำงานเหมือน Node version manager ถ้าคุณใช้มัน มันจัดการ JDKS ของคุณสำหรับคุณและเสนอการดาวน์โหลดรุ่นต่าง ๆ (เปิด, ซูลู, Graals) และจะสลับระหว่างพวกเขาด้วยคำสั่งด่วน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.