Eclipse ส่งคืนข้อความแสดงข้อผิดพลาด“ Java เริ่มต้นแล้ว แต่ส่งคืนรหัสทางออก = 1”


155

นี่คือรูปภาพของรหัสข้อผิดพลาด

ฉันเพิ่งดาวน์โหลดและค้นหา SDK Android สำหรับ Windows ขณะนี้ฉันกำลังใช้ W8 64x


ตรวจสอบสิ่งนี้ - bugs.eclipse.org/bugs/show_bug.cgi?id=333227
Khobaib

1
มีปัญหาที่คล้ายกันหนึ่งครั้งที่ข้อผิดพลาดไม่ได้เกิดจากรุ่นจาวา แต่มันพลาดไลบรารีสำหรับจาวาเอเจนต์บางตัว ควรทุกคนที่เคยได้รับการแก้ไขปัญหานี้ :)
นีลส์ Bech นีลเซ่น

1
ฉันยังมีปัญหาเดียวกัน เมื่อฉันติดตั้ง 64 บิต JDK ข้อผิดพลาดนี้ไม่สามารถทำซ้ำได้อีก
Sudhakar

คำตอบ:


264

ข้อความแสดงข้อผิดพลาดชี้ไปที่ปัญหากับเวอร์ชัน Java ของคุณ คุณมี JDK ติดตั้งอยู่หรือไม่

ลองเพิ่มสิ่งต่อไปนี้ (สังเกตบรรทัดใหม่):

/! \ ตรวจสอบให้แน่ใจว่า-vmตัวเลือกที่เกิดขึ้นก่อนที่จะ-vmargsคำสั่ง ทุกอย่างหลังจาก-vmargsผ่านไปยัง JVM โดยตรง

-vm 
c:/wherever/java/jdk1.6.0_21/jre/bin/server/jvm.dll
-vmargs... 

... ไปยังeclipse.iniไฟล์ของคุณชี้ไปที่ JDK ที่คุณต้องการใช้และตรวจสอบว่าเวอร์ชัน Java ที่ต้องการนั้นเป็นอย่างน้อยเท่ากับ JDK ของคุณ นี่คือเส้นทางสำหรับระบบ Windows สามารถดูข้อมูลเพิ่มเติมเกี่ยวกับเส้นทางได้ที่นี่ (เลื่อนลง)

หากคุณไม่ทราบว่าไฟล์สม่ำเสมอมันอยู่ในโฟลเดอร์ของคุณeclipse.inieclipse.exe

แก้ไข 2: @KadoLakatt : สาเหตุที่การติดตั้ง Java Version ล่าสุดทำงานให้คุณเพราะ Eclipse ตรวจสอบเส้นทางมาตรฐานสำหรับ JVM หากไม่พบ-vmรายการ (ดูที่นี่ ) อย่างไรก็ตามฉันไม่แนะนำเพราะคุณอาจเดาผิดว่าใช้ JVM หากคุณอัปเดต Java (โดยอัตโนมัติ?) คุณอาจพบปัญหาใน Eclipse ของคุณโดยสงสัยว่าคุณอาจเปลี่ยนแปลงอะไร ดีกว่าตั้งเป็นโฟลเดอร์เฉพาะในของคุณeclipse.iniให้แน่ใจ


2
@KadoLakatt: โปรดให้คำตอบของคุณเองในครั้งต่อไป แก้ไขโพสต์ของฉันเพื่อแก้ไขประเด็นของคุณ
Calon

1
'ตรวจสอบให้แน่ใจว่าตัวเลือก -vm เกิดขึ้นก่อนคำสั่ง -vmargs' ... นี่ยังช่วยฉันได้มากพร้อมกับคำตอบของคุณ!
Vikram

2
ตรวจสอบให้แน่ใจว่าคุณพิมพ์บรรทัดตามที่แสดง: โดยมีพา ธ บนบรรทัดแยกต่างหากไม่ใช่ในแบบเดียวกันกับ -vm
Diomidis Spinellis

ฉันมีข้อผิดพลาดนี้กับ javaw.exe หรือ java.exe แต่ด้วย jvm.dll ทุกอย่างทำงานได้ดี ขอบคุณ
ไซยาไนด์

2
ฉันเปลี่ยนจาก ".exe" เป็น ".dll" แต่เส้นทาง ".exe" ทำงานได้หลายเดือนก่อนหน้านี้ -vm C:/Program Files/Java/jdk1.8.0_191/jre/bin/javaw.exe ถึง:-vm C:/Program Files/Java/jdk1.8.0_191/jre/bin/server/jvm.dll
Reddymails

45

ฉันได้รับข้อผิดพลาดนี้จากสีน้ำเงิน Eclipse หยุดทำงานแม้ว่าฉันจะไม่ทำการเปลี่ยนแปลงการตั้งค่าและไม่ได้ติดตั้ง jdk ใหม่

นี่คือไฟล์ eclipse.ini ของฉัน:

--clean
-startup
plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.200.v20130807-1835
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vm
C:/Program Files (x86)/Java/jre7/bin/javaw.exe
--launcher.appendVmargs
-vmargs
-Dosgi.requiredJavaVersion=1.6
-Xms40m
-Xmx1024m

เพื่อให้ Eclipse เริ่มต้นได้สำเร็จฉันได้ลบออกไปแล้ว

    -vmargs
    -Dosgi.requiredJavaVersion=1.6
    -vm 
C:/Program Files (x86)/Java/jre7/bin/javaw.exe

ดังนั้นนี่คือไฟล์ที่อัปเดตของฉัน:

--clean
-startup
plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.200.v20130807-1835
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-Xms40m
-Xmx1024m

ฉันไม่มีความคิดว่าทำไมการลบ osgi.requiredJavaVersion = 1.6 ได้แก้ไขสิ่งนี้เนื่องจากเวอร์ชัน jvm ของฉันคือ 1.6 จากเอกสารhttp://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Freference%2Fmisc%2Fruntime-options.html

osgi.requiredJavaVersion
The minimum java version that is required to launch Eclipse. The default value is "1.4.1".

ฉันคิดว่ารุ่น java ของฉันถูกตั้งค่าอย่างถูกต้อง ยังไงก็ตาม Eclipse เริ่มและวิ่งมาหาฉันตอนนี้ ......


1
คุณไม่ได้ลบแค่สองบรรทัด แต่มีสี่เส้น พารามิเตอร์ -vm ถูกลบเช่นกันและฉันเดาว่านี่เป็นสิ่งที่ทำให้เกิดความผิดพลาด เมื่อคุณไม่ได้กำหนดพา ธ ใน eclipse.ini eclipse จะเริ่มต้นด้วย JVM เริ่มต้นที่คุณกำหนด โปรดทราบว่าทุกอย่างหลังจากพารามิเตอร์ -vmargs จะถูกส่งผ่านไปยัง JVM เป็นพารามิเตอร์ ฉันไม่แน่ใจว่าการตั้งค่า xms และ xmx ของคุณยังคงทำงานอยู่หากคุณลบ -vmargs
Calon

2
ฉันยังลบ: -vmargs -Dosgi.requiredJavaVersion = 1.6 และตอนนี้ก็ใช้งานได้! ขอบคุณสำหรับการแก้ไข!
Dainius Kreivys

สิ่งนี้ได้ผลกับฉันเช่นกัน ฉันไม่แน่ใจว่าทำไมมันถึงเกิดข้อผิดพลาดเมื่ออย่างที่คุณพูดฉันไม่ได้เปลี่ยนแปลงอะไรกับ Java / Eclipse ... แปลก
user1282637

2
ฉันได้รับข้อผิดพลาดนี้บนเครื่อง Windows หลังจากติดตั้งปลั๊กอิน "Eclipse SDK" Eclipse ถูกเพิ่ม-vm C:/Program Files/Java/jdk1.8.0_45/bin/javaw.exeในไฟล์ eclipse.ini อย่างเงียบ ๆร้องขอการรีสตาร์ทและจากนั้นไม่สามารถเรียกใช้ -vm C:\Program Files\Java\jdk1.8.0_45\bin\javaw.exeในอดีตที่ผ่านมาผมเพิ่มด้วยตนเอง เกิดข้อผิดพลาดเนื่องจากฉันถูกทิ้งให้มีสองรายการ '-vm' การลบหนึ่งในนั้นเป็นปัญหาที่แก้ไขแล้ว
Hollis Waite

ฉันลบออกเท่านั้น: -vmargs -Dosgi.requiredJavaVersion=1.6ฉันไม่รู้ว่านรกมาจากไหน IDE ทำงานได้ดีในอดีต
Tomáš Zato - Reinstate Monica

9

มันอาจเป็นแบบนี้เช่นกัน:

-vm 
C:\Program Files\Java\jre6\bin\server\jvm.dll

3
สิ่งนี้ใช้ได้สำหรับฉัน ดังนั้นผมคิดว่าเป็นเพียงการย้าย C: \ ส่วนหนึ่งลงไปบรรทัดที่สองเนื่องจากปัญหาขนาด แต่จะมีเพียงการทำงานในบรรทัดที่แยกต่างหาก
IDontWorkAtNASA

@IDontWorkAtNASA ใช่บางครั้งจุดง่าย ๆ หรือช่องว่างหรือการขึ้นบรรทัดใหม่กลายเป็นปัญหาที่สำคัญมาก!
Abu Shumon


6

สำหรับบรรดาของคุณที่ลองคำตอบข้างต้นทั้งหมดโดยไม่ประสบความสำเร็จลองลดค่า -Xms ของคุณ ฉันต้องสนับสนุน Eclipse รุ่นเก่า (Weblogic Eclipse 10.3.6) - ฉันมี. ini ต่อไปนี้บนเครื่อง Windows 7 ของฉันและ Windows Server 2008 R2 Enterprise VM ของฉัน (เวอร์ชัน Java ด้านล่างชี้ไปที่จาวาแบบ 32 บิต) ที่มี ทำงานและทำงานได้อย่างสมบูรณ์แบบตามลำดับ

-vm
C:/Java/Java7/jdk1.7.0_79/bin/javaw.exe
-startup
plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.200.v20120522-1813
-showsplash
org.eclipse.platform
--launcher.defaultAction
openFile
-vmargs
-Xms1024m
-Xmx1024m
-XX:MaxPermSize=256m
-Dsun.lang.ClassLoader.allowArraySyntax=true
-Dweblogic.home=C:/Oracle/Middleware/wlserver_10.3

ดังนั้นจาวา 32 บิตสำหรับ Eclipse แบบ 32 บิต แต่ยังคงออกจากรหัส 1 ตามคำตอบทั้งหมดที่ฉันได้เห็นที่นี่และการเปลี่ยนแปลงเพียงอย่างเดียวกับแล็ปท็อปเครื่องใหม่ที่ใช้ Windows 10 คำอธิบายที่เป็นไปได้เพียงอย่างเดียวคือระบบปฏิบัติการใหม่และ Eclipse ไม่เห็นด้วยกับบางอย่าง ดังนั้นฉันจึงเริ่มเล่นกับแต่ละค่าและมันทำงานเมื่อฉันลดทั้ง Xms และ Xmx ถึง 512m ฉันมีลางสังหรณ์ที่อาจเป็นไปได้ว่าระบบปฏิบัติการ Windows ใหม่จะป้องกันขนาดฮีพเริ่มต้นที่สูงกว่าโดยขึ้นอยู่กับสภาพการทำงานบางอย่าง (-Xms ที่สูงกว่าจะทำงานบน Windows 10 บนอุปกรณ์ที่คล้ายคลึงกันอื่น ๆ ทั้งหมดที่ฉันเจอ) ในขณะเดียวกันต่อไปนี้เป็นค่าเดียวที่ฉันปรับแต่งเพื่อเปิดใช้ Eclipse

-Xms512m 

หากคุณกำลังใช้เครื่องเสมือน (VM) และไม่สามารถลดค่า -Xms (ตัวอย่างเช่นไฟล์ค้างคาวอยู่ในไดรฟ์ที่แชร์แบบอ่านอย่างเดียว) จากนั้นจัดสรรหน่วยความจำเพิ่มเติมให้กับ VM ดูเหมือนจะชัดเจน แต่ฉันมองข้ามสิ่งนี้ไปหนึ่งชั่วโมง
Skurfur

6

การทำงานร่วมกับ OS, JDK และ eclipse bitness

  • ระบบปฏิบัติการ 32- บิต, JDK 32- บิต, Eclipse 32- บิต (32- บิตเท่านั้น)
  • ระบบปฏิบัติการ 64 บิต, JDK 32 บิต, Eclipse 32 บิต
  • ระบบปฏิบัติการ 64 บิต, JDK 64 บิต, 64 บิต Eclipse (64- บิตเท่านั้น)

กรุณาใช้ 1 ในชุดค่าผสมด้านบน


4

ฉันมีปัญหาเดียวกันใน Windows 7 เครื่อง 64 บิต จากนั้นฉันดาวน์โหลดและติดตั้ง 64 บิต jdk สำหรับ Java (ซึ่งรวมถึง jre) วิธีนี้แก้ไขปัญหาได้


เพียงทำการอัปเดต Java จะช่วยแก้ปัญหานี้เช่นกันหากเวอร์ชัน Java ของคุณล้าสมัย
cid

3

ฉันพบปัญหาที่คล้ายกัน เหตุผลก็คือเส้นทางไปยัง eclipse ของฉันมีตัวอักษรจีน เมื่อลบอักขระเหล่านั้นแล้วปัญหาจะได้รับการแก้ไข โปรดตรวจสอบว่ามีอักขระอื่นนอกเหนือจากภาษาอังกฤษในเส้นทางของคุณหรือไม่


3

ฉันก็ประสบปัญหาที่คล้ายกันไม่แก้ไขหลังจากเพิ่มคำสั่งในไฟล์ eclipse.ini สาเหตุของฉันแตกต่าง ฉันกำลังทดลองกับแผนภาพลำดับโดยใช้ objectaid นี่คือการโยนข้อยกเว้นและรบกวนพื้นที่ทำงานของฉัน คุณอาจมีปัญหาที่แตกต่างกันเมื่อทำงานกับปลั๊กอินใหม่ ดีกว่าคุณตรวจสอบไฟล์บันทึกที่อยู่ในพื้นที่ทำงานโครงการของคุณC:\path\to\workspace\.metadata\.log


2

สิ่งนี้สามารถแก้ไขได้โดยการเพิ่มบรรทัดต่อไปนี้ลงในไฟล์ eclipse.ini -XX: -UseCompressedOops


1
นี่เป็นบรรทัดสั้น ๆ ที่น่าสนใจสำหรับพารามิเตอร์ซึ่งทำงานภายใต้สถานการณ์พิเศษเท่านั้น Afaik `UseCompressedOops 'เปิดใช้งานโดยค่าเริ่มต้นเริ่มต้นด้วย Java 6_18 ใน adition นั้นมีเฉพาะใน Java 6 ขึ้นไปและทำขึ้นสำหรับแอปพลิเคชัน 64 บิตเท่านั้น ดังนั้นมันอาจช่วยได้ แต่เฉพาะในบางรุ่น Java
Calon

2

ฉันมีปัญหาเดียวกันซึ่งเกิดขึ้นเนื่องจากความผิดพลาดในการปิดระบบ windows 10 ของฉันก่อนหน้านี้ในเส้นทางที่ฉันมีเส้นทาง Oracle คือเส้นทางที่แทรกโดย Oracle ในขณะติดตั้ง JDK ฉันลบมันแล้วเปลี่ยนเส้นทางไปยังตำแหน่ง JDK วิธีนี้แก้ปัญหาได้



1

การเปลี่ยนแปลงไฟล์ eclipse โดยตรงไม่ใช่ความคิดที่ดีไม่ว่าจะเป็น facet หรือ ini เว้นแต่ว่าจะมีการเปลี่ยนแปลงใน eclipse พบปัญหาเดียวกันเมื่อติดตั้ง jdk1.8 เปลี่ยนเป็น jdk 1.7ป้อนคำอธิบายรูปภาพที่นี่

นอกจากนี้ตามhttps://wiki.eclipse.org/Eclipse/Installationทั้ง LUNA และ MARS ต้องการ 1.7 ดังนั้นให้แน่ใจว่าคุณได้ติดตั้งแล้ว


1

Mine เป็นระบบ 64 บิตพร้อมการติดตั้ง 64 บิต java สิ่งที่ทำงานให้ฉันคือต่อไปนี้:

  1. ไปที่ไดเร็กทอรีการติดตั้ง eclipse
  2. คลิกขวาที่ไอคอน eclipse และคลิก "send to desktop as ลัด"
  3. จากนั้นคลิกขวาที่ไอคอนทางลัดในเดสก์ท็อปแล้ว> คุณสมบัติ> แท็บทางลัด
  4. ในฟิลด์เป้าหมายชี้ไปที่พา ธ การติดตั้งโฮม 64 java ที่ถูกต้องโดยใช้อาร์กิวเมนต์ vm พร้อมกับพา ธ java_home ที่อยู่ในเครื่องหมายคำพูดดังนี้:

    D: \ Scala_eclipse \ eclipse.exe -vm "C: \ Program Files \ Java \ jdk1.8.0_11"

    ไอคอนทางลัด scala eclipse

นี่เกือบจะแก้ปัญหาที่เกี่ยวข้องกับ Eclipse (scala eclipse) ของฉันทั้งหมด ดังที่กล่าวไว้ในคำตอบ โปรดตรวจสอบให้แน่ใจว่าคุณใช้ชุดค่าผสมที่ถูกต้องของ eclipse และ java


1

1) เปิดไฟล์SpringToolSuite4.ini
2) ค้นหาสำหรับopenfile
3) จัดเตรียมตำแหน่งไฟล์ jvm.dll ในSpringToolSuite4.ini
4) หมายเหตุ: ระบุ New Line ระหว่าง -vm และพา ธ ของตำแหน่งไฟล์ jvm.dll ของคุณดังที่แสดงด้านล่าง

openFile
-vm 
C:\Program Files\Java\jre8\bin\server\jvm.dll
-vmargs
-Dosgi.requiredJavaVersion=1.8
-Xms256m

ป้อนคำอธิบายรูปภาพที่นี่


นี่เป็นการแก้ไขปัญหาของฉัน ฉันแก้ไข -vm ด้วย c: \ Program Files \ Java \ jdk1.8.0_211 \ jre \ bin \ server \ jvm.dll ขอบคุณ Lova
tom johnes

0

เพียงเพิ่มที่นี่ ...
สำหรับคนที่ยังไม่สามารถเริ่ม eclipse เนื่องจากข้อผิดพลาดเดียวกันได้โปรดตรวจสอบไฟล์ eclipse.ini อีกครั้งและดูว่าคุณลืมใส่Mขนาดหน่วยความจำ ตัวอย่างเช่น:

-Xmx1024
or
-Xmx1024MB
or
-Xmx1024 M
or
-Xmx1024 mb
or
-Xmx1024mb

-Xmx1024Mไม่ถูกต้องก็ควรจะ ฉันลองใช้ความคิดที่แตกต่างจาก SOF และจากฟอรัมอื่น ๆ และในการตัด / วางฉันลืมว่าฉันพลาดM(สิ่งเล็กน้อยที่ควรพลาด) ดังนั้นฉันคิดว่าฉันควรแบ่งปัน ถ้ามันเหมาะกับคุณบางคนโปรดลงคะแนน


0

ฉันมีปัญหานี้เมื่อเร็ว ๆ นี้ แต่ฉันไม่ได้เปลี่ยนจาวาหรืออัปเดตเวอร์ชันจาวาอาจเป็นปัญหานี้ได้เนื่องจากระบบหยุดทำงานผิดพลาด

และหลังจากอ่านคำตอบสองสามข้อที่นี่ฉันตัดสินใจที่จะเปลี่ยนเวอร์ชันจาวาจาก 1.6 เป็น 1.7 ในไฟล์ eclipse.ini

-vmargs
-Dosgi.requiredJavaVersion=1.6  

หลังจากการเปลี่ยนแปลงนี้ Eclipse เริ่มต้นได้ดีและใช้งานได้ เนื่องจากฉันไม่ได้เปลี่ยนแปลงอะไรเลยฉันจึงตัดสินใจเปลี่ยนกลับไปเป็น 1.6 เดิม

จากนั้นฉันก็เริ่มสุริยุปราคาและเดาว่ามันทำงานได้ดี ดังนั้นดูเหมือนว่าในกรณีของฉันเพียงแค่สัมผัส / แก้ไขไฟล์ eclipse.ini ทำงาน

ฉันหวังว่าคำตอบนี้จะเป็นประโยชน์กับใครบางคน


0

หากวิธีการแก้ไขไม่ได้ผลโปรดตรวจสอบว่าคุณติดตั้งจาวามากกว่าหนึ่งรุ่นในเครื่องของคุณหรือไม่ โปรดเก็บรุ่นเดียวที่คุณต้องการและทุกอย่างจะทำงานได้ดี


0

คำตอบข้างต้นไม่ได้ช่วยฉัน ฉันค้นพบโดยทั่วไปแล้วข้อผิดพลาดเช่นนั้นอาจหมายความว่า eclipse.ini ของคุณมีรายการที่ไม่ถูกต้อง ดังนั้นคำตอบทั้งหมดข้างต้นอาจถูกต้องขึ้นอยู่กับกรณีของคุณ ในกรณีของฉันมันกลับกลายเป็นว่าฉันได้เพิ่มการโต้แย้งสถานที่ที่มีการพิมพ์ผิดในมัน


0

ฉันพยายามเปลี่ยนพา ธ ในพารามิเตอร์ -vm แต่ก็ไม่ได้ช่วยอะไร จากนั้นฉันลบพารามิเตอร์ -vm และ -vmargs จาก eclipse.ini มันใช้งานได้สำหรับฉัน



0

เส้นทางของการโต้แย้ง -javaagent ของฉันมีตัวละครพิเศษเช่น '&' ฉันวางโถ Lambok ในสถานที่ต่าง ๆ และให้เส้นทางไปยังสถานที่นั้น มันใช้งานได้สำหรับฉัน

ก่อนหน้านี้มันเป็น

-javaagent: C: \ Software & Tool \ lambok.jar

ฉันเปลี่ยนเป็น

-javaagent: C: \ Labmok \ lambok.jar


-4

หากพบว่าไฟล์ c: / program / java / jre / bin / server / jvm.dll ไม่พบให้คัดลอก jre จากโฟลเดอร์ jdk และวางไว้นอกโฟลเดอร์ jdk จากนั้นลองอีกครั้ง ...


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