ग्रहण त्रुटि: 'जावा वर्चुअल मशीन बनाने में विफल'


211

मुझे यह त्रुटि संदेश तब मिल रहा है जब मैंने विंडोज 7 पर ग्रहण हेलियोस शुरू किया:

जावा वर्चुअल मशीन बनाने में विफल

यहां छवि विवरण दर्ज करें

मेरा eclipse.ini इस प्रकार दिखता है:

-startup
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
-vm
P:\Programs\jdk1.6\bin
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.0.v20100503
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
512m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms120m
-Xmn100m
-Xmx1024m

मेरा JAVA_HOME सही ढंग से सेट है जहाँ तक मैं बता सकता हूँ। मैं इसे कैसे ठीक करूं?

मैंने अब तक जिन चीजों की कोशिश की है:

  1. Javaw.exe के लिए पूर्ण पथ जोड़ना -vm P:\Programs\jdk1.6\bin\\bin\javaw.exe
  2. -vmविकल्प को पूरी तरह से हटा देना
  3. हटाने --launcher.XXMaxPermSizeसे समस्या ठीक हो जाती है, लेकिन यह पर्मेंन त्रुटियों का कारण बनता है
  4. समस्या 512को --launcher.XXMaxPermSizeहल करने का मान निकाल रहा है , लेकिन यह अनुमति देता है त्रुटियों
  5. कम -Xmxकरना 512mभी समस्या को हल करता है।

मैं '-Xmx' और '--launcher.XXMaxPermSize' के लिए '1024m' का उपयोग क्यों नहीं कर सकता?


18
इसका मतलब है कि jvm आपके कंप्यूटर में आवश्यक मेमोरी स्पेस (1024 + 512) आवंटित नहीं कर सकता है।
केन

तो बस पुष्टि करने के लिए मैं इसे सही ढंग से समझता हूं। JVM द्वारा निर्दिष्ट की गई मेमोरी की मात्रा आवंटित होगी (XXMaxPermSize + Xmx)
Maro

2
यह वीएम शुरू करते समय तुरंत अधिकतम ढेर आकार (निर्दिष्ट -Xmx) के साथ मेमोरी नहीं बनाता है। लेकिन यह सुनिश्चित करेगा कि vm शुरू करते समय रनटाइम में अधिकतम ढेर आकार बनाने की क्षमता हो। यदि नहीं, तो vm नहीं बनाया जा सकता है।
केन

मुझे पता नहीं क्यों, लेकिन मेरी मशीन ग्रहण पर केवल यह समस्या है जब ड्रैगन स्वाभाविक रूप से चल रहा है। रॉनकी के समाधान ने मेरे लिए काम किया।
लूटने

@rob: ऐसा शायद इसलिए है क्योंकि ड्रैगन बहुत सारी मेमोरी का उपयोग करता है। इस समस्या का कारण यह प्रतीत होता है कि JVM पर्याप्त मेमोरी आवंटित नहीं कर सकता है।
स्टिज डे विट

जवाबों:


80

-vm P:\Programs\jdk1.6\binलाइनों को हटाने की कोशिश करें ।


इसके अलावा, एक सामान्य सिफारिश: सेट -Dosgi.requiredJavaVersion=1.6, नहीं 1.5


52
eclipse.ini में, कम करना -Xmx को 512m से बदलकर 1024 करना मेरे लिए समस्या तय कर दिया। सिस्टम में 1GB रैम थी।
डेक्सटर

3
@dexter, शुक्रिया, इसने मेरे लिए काम किया, Xmx कम करके
danisupr4

ग्रहण ग्रहण -२०२० के लिए, जोड़ें: "- vm" "/Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/Contents/Home/bin/nava" नीचे "--launcher.appendVmargs" ग्रहण काल ​​में।
क्लार्क यू

283

1.eclipse.ini अपने ग्रहण फ़ोल्डर से फ़ाइल खोलें , नीचे दी गई तस्वीर देखें।

eclipse.ini

2. ओपन eclipse.iniमें Notepadया किसी अन्य text-editorअनुप्रयोग, लाइन का पता लगाएं -Xmx256m(या -Xmx1024m)। अब डिफ़ॉल्ट मान 256m(या 1024m) को बदलें 512m। आपको सटीक जावा स्थापित संस्करण (1.6 या 1.7 या अन्य) देने की भी आवश्यकता है।

अधिकतम आकार

इस तरह:

-Xmx512m
-Dosgi.requiredJavaVersion=1.6

या

-Xmx512m
-Dosgi.requiredJavaVersion=1.7

या

-Xmx512m
-Dosgi.requiredJavaVersion=1.8

फिर यह मेरे लिए अच्छा काम करता है।


8
यह केवल तभी काम करेगा जब समस्या पर्याप्त मेमोरी नहीं थी और यदि आप eclipse.ini में मान कम करते हैं। उन्हें उठाने से केवल इस समस्या को होने की अधिक संभावना होगी।
स्टिज डे विट

2
धन्यवाद यार, मैंने इस मूल्य को बढ़ाया और यह ठीक काम किया, मुझे लगता है कि ऐसा हुआ क्योंकि मैंने जेडीके को अपडेट किया।
परवेज आलम

1
यह वास्तव में मेरे लिए भी काम करता है - एनबी: ग्रहण ने बस काम करना बंद कर दिया - मैंने काम किया -Xmx1024m, Xmx512mकाम किया। स्पष्ट रूप से पर्याप्त मेमोरी नहीं थी (?)
Mr_and_Mrs_D

मेरे मामले में यह 1024 से मूल्य को 512 में बदलने पर काम नहीं करता था, लेकिन जब मैंने इसे फिर से पिछले मूल्य यानी 1024 में बदल दिया तो यह काम कर गया।
ताआरान लयाल

1
वाह .. ग्रहण मंगल के लिए, मैंने -Xmx1024m को -Xmx512m बदल दिया और यह काम कर गया!
उमेश पाटिल

111

जोड़ने की कोशिश करें

-vm
D:\Java\jdk1.6.0_29\bin\javaw.exe

FYI करें: सनब्लॉग का संदर्भ लें

ग्रहण विकी के अनुसार जिन लोगों को जावा 7 की समस्या हो सकती है, उनके लिए - eclipse.ini vm_value (विंडोज़ उदाहरण)

यह सभी प्रणालियों पर काम नहीं कर सकता है। यदि आप "जावा शुरू किया गया था लेकिन ग्रहण शुरू करते समय बाहर निकलें कोड = 1" त्रुटि, jvm.dll को इंगित करने के लिए -vm तर्क को संशोधित करें

जैसे

-vm
C:\Program Files\Java\jre7\bin\client\jvm.dll

उस पर भी ध्यान दें

-Vmgs विकल्प -vmargs के पहले ही होना चाहिए, क्योंकि -vmargs सीधे JVM के पास जाने के बाद सब कुछ


यह बहुत अच्छा काम करता है, लेकिन मैं -mm C: \ Program Files (x86) \ Java \ jre6 \ bin \ javaw.exe का उपयोग करना पसंद करता हूं क्योंकि JRE पथ स्थिर रहने की अधिक संभावना है, खासकर यदि आप एक ही ग्रहण स्थापना साझा कर रहे हैं कई मशीनें / वी.एम.
लूटने

यह मेरे लिए काम करता है, लेकिन ग्रहण करते समय org पर लोड हो रहा है ।eclipse.debug.core
राहुल राजदान

5
+1 मुझे ऑर्डरिंग भाग याद आ रहा था। नेट पर अन्य सभी स्थानों पर वे -vm तर्क के बारे में बात करते हैं, लेकिन वे यह कहने के लिए उपेक्षा करते हैं कि इससे पहले यह होना चाहिए -Mmargs
demongolem

मैं एंड्रॉइड एसडीके को ग्रहण के साथ स्थापित करते समय एक ही मुद्दे का सामना कर रहा था और इसने इसे ठीक कर दिया। धन्यवाद !
कोडिंगसिस्टिस्ट

रिकॉर्ड के लिए, मैं विंडोज 7 होम प्रीमियम और सर्वर जेवीएम 1.8.0_05 का उपयोग कर रहा हूं, दूसरी विधि, मेरे लिए काम किए गए डीएल को इंगित करके, पहली विधि नहीं थी।
आयरनलूका

26

मुझे पता है कि यह अब बहुत पुराना है लेकिन मेरे पास बस एक ही मुद्दा है और समस्या यह थी कि मुझे ग्रहण करने के लिए बहुत अधिक मेमोरी आवंटित की गई थी ताकि यह पकड़ में न आ सके। खुला eclipse.ini तो और स्मृति की मात्रा है कि करने के लिए आवंटित किया जा रहा है कम -Xmx XXMaxPermSizeमैं मेरा करने के लिए बदल -Xmx512mऔरXXMaxPermSize256m


क्या यह 32 बिट मशीन पर है? क्योंकि मुझे विश्वास है कि 32bit विंडो पर आप कितनी मेमोरी का उपयोग कर सकते हैं, इसकी एक सीमा है
मैरो

@Maro हाँ यह था। 64bit में अपग्रेड हो रही है।
पोपये

1
मेरे लिए काम किया, 512m ऑन -Xmx पैरामीटर के साथ 768 मीटर की जगह।
तारक

मैं 8GB मेमोरी के साथ 64-बिट मशीन पर हूं लेकिन फिर भी -Xmx = 768m का उपयोग करते हुए -XX के साथ संयोजन में: PermSize = 256m और -XX: MaxPermSize = 512m बहुत अधिक साबित हुआ। यह एक 32 बिट जावा है इसलिए यह केवल 4GB का 'उपयोग' कर सकता है, लेकिन व्यवहार में यह बहुत कम है। मैं उम्मीद करता हूं कि इसे शुरू करने के लिए 1024 मीटर और 1280 मीटर अधिकतम ...
डे विट

धन्यवाद मुझे यकीन है कि मैंने इसे कुछ महीने पहले 1024 में बदल दिया था ताकि समस्या का समाधान हो सके। इस सवाल का असली जवाब एंड्रॉइड स्टूडियो के लिए है, यह बहुत अच्छा है। मैं केवल ग्रहण में वापस आया क्योंकि मैंने अपने पुराने ऐप्स में से एक को माइग्रेट नहीं किया था और कुछ करने की आवश्यकता थी।
रयान हेइटनर

18
  1. eclipse.iniअपने ग्रहण फ़ोल्डर से फ़ाइल खोलें ।

  2. यह विन्यास पर कुछ जोड़ने की है। लाइन का पता लगाएं –launcher.XXMaxPermSize। अब डिफॉल्ट वैल्यू 256 मीटर निकालें और इसे सेव करें।


18

मैंने eclipse.ini को हटा दिया । मैंने इस समस्या का सामना किया और ini फ़ाइल को हटाकर इसे हल किया।


12
  1. Eclipse.exe के साथ फ़ोल्डर खोलें और eclipse.ini फ़ाइल ढूंढें
  2. बदलें -vmargs javaw.exe के अपने वर्तमान वास्तविक पथ से: * -vm "c: \ Program Files \ जावा \ jdk1.7.0_07 \ बिन \ 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
    -product
    com.android.ide.eclipse.adt.package.product
    --launcher.XXMaxPermSize
    256M
    -showsplash
    com.android.ide.eclipse.adt.package.product
    --launcher.XXMaxPermSize
    256m
    --launcher.defaultAction
    openFile
    **-vm “c:\Program Files\Java\jdk1.7.0_07\bin\javaw.exe”** 
    -Dosgi.requiredJavaVersion=1.6
    -Xms40m
    -Xmx768m
    -Declipse.buildId=v21.1.0-569685
    

9

आप "-muncher.XXMaxPermSize" लाइन के तहत "256 मीटर" मान को हटाकर भी इस समस्या को हल कर सकते हैं।


मेरे लिए काम किया। हालांकि उस मूल्य के साथ भी, यह विंडोज लॉग ऑफ और उसके बाद लॉग इन के बाद ठीक काम करता था।
अमर

9

मुझे इसके लिए एक बहुत ही आसान उपाय मिला। बस eclipse.iniफ़ाइल को हटाएं , लेकिन पहले बैकअप लें। मुझे कई बार यही समस्या थी और आखिरकार मैंने इसे हटा दिया और मुझे अब और समस्या नहीं है।

इससे लोडिंग का समय भी बढ़ गया। अब मेरा ग्रहण पहले की तुलना में तेज होने लगा है।


Eclipse.ini को हटाने के बाद , मुझे यह त्रुटि मिल रही है, जब Eclipse को शुरू करने की कोशिश की => ग्रहण निष्पादित लांचर अपने साथी साझा पुस्तकालय का पता लगाने में असमर्थ था
NIKHIL CHAURASIA

बहुत बढ़िया! मैं ini फ़ाइल को संपादित करने के लिए कई चरणों की कोशिश की। लेकिन यह जवाब बहुत अच्छा है। यह काम करता हैं। चियर्स!
किनारे

7

में STS.confफ़ाइल आपके द्वारा बनाए गए से बचने के लिए दो महत्वपूर्ण बातें जांच करने की आवश्यकता / JVM मुद्दे का आवंटन

1. सटीक jdk स्थापित स्थान दें:

--vm C:\Program Files\Java\jdk1.7.0_01\jre\bin\javaw.exe

2. आपको सटीक जावा स्थापित संस्करण देने की आवश्यकता है:

--Dosgi.requiredJavaVersion=1.7

3. मेमोरी का आकार कम करने की कोशिश करें:

--XX:MaxPermSize=256m

7
  1. Ecplise.ini फ़ाइल खोलें, जो ग्रहण स्थापना फ़ोल्डर में स्थित है।

  2. लाइन को खोजें और बदलें -vmgs को -m D के साथ बदलें: \ jdk1.6.0_23 \ bin \ javaw.exe या बस लाइन -vmargs निकालें और इसे सहेजें। अब समस्या हल हो रही है


2
धन्यवाद @Rajas बस लाइन -vmargs को हटा दें और इसे बचाने के लिए मेरे लिए काम किया
बर्नॉयर

5

मेमोरी को कम करने के उपरोक्त समाधान की कोशिश करने के बाद, एक्लिप्स काम करना शुरू कर देता है, लेकिन हर बार प्लग-इन को कार्य-स्थान से विशेष रूप से लोड करते समय लटका देता है org.eclipse.debug.core

मुझे इसका हल मिला, एक्लिप्स स्प्लैश स्क्रीन पर लटका हुआ है , और इसे साझा करना चाहते हैं। उम्मीद है कि यह दूसरों की भी मदद कर सकता है।


पिछले घंटे में मैंने जो कुछ भी करने की कोशिश की, उसके विपरीत, यह काम किया, धन्यवाद!
जस्टिन टी।

डेड लिंक, आपके पास कोई और मौका?
एडम पार्किन

4

सुनिश्चित करें कि eclipse.ini में एकाधिक प्रविष्टि नहीं है और vmgs से पहले vm प्रविष्टि का उपयोग किया गया है:

-vm
  D:/java/jdk1.8.0_65/bin/javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=1.8
-Dosgi.instance.area.default=@user.home/eclipse-workspace
-XX:+UseG1GC
-XX:+UseStringDeduplication
-Dosgi.requiredJavaVersion=1.8
-Xms256m
-Xmx1024m

3

इसको आजमाओ:

-startup plugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar 
--launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.2.R36x_v20101222 
-showsplash org.eclipse.platform 
--launcher.XXMaxPermSize 256m 
--launcher.defaultAction openFile 
-vm F:\Program Files\jdk1.6\bin\javaw.exe 
-vmargs 
-Xms512m 
-Xmx512m 
-XX:+UseParallelGC 
-XX:PermSize=256M 
-XX:MaxPermSize=512M

3

जल्दी ठीक:

बदलें -Xmx1024mकरने -Xmx512mमें eclipse.ini (एक ही स्तर जहां पर स्थित फ़ाइल eclipse.exeमौजूद है)। और यह एक आकर्षण की तरह काम करेगा।


3

इस समस्या को ठीक करने का सरल तरीका है कि आप अपनी eclipse.ini फ़ाइल को हटाएं या उसका नाम बदलें । पहले कोशिश करो। यदि यह विधि आपकी समस्या का समाधान नहीं करती है, तो नीचे वर्णित समाधानों का प्रयास करें।

इसे ठीक करने के अन्य तरीके:

समाधान 1

Eclipse.ini फ़ाइल में एक स्ट्रिंग जोड़ें जो फ़ाइल के गंतव्य को बदलता है javaw.exe। मुख्य बात यह है कि इस स्ट्रिंग को "-vmargs" स्ट्रिंग के ऊपर रखा जाना चाहिए!

-vm
C:\Program Files\Java\jdk1.6.0_22\bin\javaw.exe 

समाधान २

का मान निकालें –launcher.XXMaxPermSize, जैसे 256 मी

समाधान 3

Xms और Xmx के मूल्यों को निकालें या घटाएं:

-Xms384m 
-Xmx384m

3

यह काम कर सकता है:

eclipse.iniफ़ाइल खोलें और लाइनों के अंत में लाइनों के नीचे पेस्ट करें।

-vmargs
-Xms40m
-Xmx512m
-XX:MaxPermSize=256m

3

जैसा कि नीचे दिखाया गया है, eclipse.ini में -vm जोड़ने के बाद मेरे लिए काम किया। इसे -vmargsहटाने से पहले इसे जोड़ें

-vm
C:\apps\Java\jdk1.8.0_92\bin\javaw.exe
-vmargs

एक jdk अपडेट था जो इस समस्या का कारण बन रहा था।


2

यह मेरे लिए काम किया:

मैंने अपने विंडोज 7 मशीन पर अन्य सभी मेमोरी गहन अनुप्रयोगों को बंद कर दिया। और मैंने एक्लिप्स, और वॉयला खोलने की कोशिश की, यह काम किया।


2

कुछ समय के लिए यह आपका ग्रहण नहीं है । यह आपकी JDK है जो दुर्घटनाग्रस्त हो गई है। आप कमांड प्रॉम्प्ट में निम्नलिखित कमांड लिखकर इसकी जांच कर सकते हैं:

c:\> java -version

यदि यह कमांड निम्न त्रुटि दिखाता है:

Error occurred during initialization of VM

java/lang/NoClassDefFoundError: java/lang/Object

फिर सबसे पहले JDK को अनइंस्टॉल करें और इसे फिर से इंस्टॉल करें।

ग्रहण फिर से कार्रवाई में होगा;) जैसा कि आज मुझे भी यही समस्या है, और ऊपर इताची उचिहा ने सुझाव दिया है ।


2

इस मुद्दे का सामना किया जब मेरा ग्रहण प्रोटॉन शुरू नहीं हो सका। त्रुटि मिली "जावा वर्चुअल मशीन बनाने में विफल"

Eclipse.ini फ़ाइल के नीचे जोड़ा गया

-vm
C:\Program Files\Java\jdk-10.0.1\bin\javaw.exe

1

मेरे लिए इस मुद्दे को जोड़ना:

-vm

D:\Java\jdk1.6.0_29\bin\javaw.exe

1

-256 तक परम का आकार कम करें

मेरी eclipse.ini फ़ाइल देखें

    -startup
   plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
   --launcher.library
  plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.100.v20110502
  -product
   org.eclipse.epp.package.jee.product
   --launcher.defaultAction
   openFile
   --launcher.XXMaxPermSize
   256M
  -showsplash
   org.eclipse.platform
   --launcher.XXMaxPermSize
   256M
  --launcher.defaultAction
  openFile
  -vmargs
  -Dosgi.requiredJavaVersion=1.6
  -Xms40m
  -Xmx512m

1

आपकी समस्या का उचित समाधान है, inv fie में अपने जावा फ़ोल्डर की jvm.dll फ़ाइल की ओर इशारा करते हुए -vm लाइन जोड़ना।

-vm
C:\Program Files\Java\jre1.8.0_202\bin\server\jvm.dll
/*there is no dquote for path, and path points to right java version folder mentioned in ini file*/

यदि उपरोक्त फिक्स फलदायी नहीं है, तो कुछ और प्रयास न करें। इस सूत्र में अधिकांश सलाह गुमराह करने वाली है। इनमें से कुछ हैक अस्थायी रूप से या कुछ मशीन कॉन्फ़िगरेशन पर काम कर सकते हैं, लेकिन eclipse.ini की सामग्री न तो तुच्छ है और न ही मनमानी। आधिकारिक संदर्भ के लिए, यह देखें [विकी पेज]: https://wiki.eclipse.org/Eclipse.ini#Specifying_the_JVM जो फ़ाइल की सामग्री की व्याख्या करता है। ढेर आकार, आदि जैसी चीजों के बारे में अधिक जानकारी के लिए उस पृष्ठ के नीचे स्थित देखें लिंक भी नोट करें। eclipse.ini, EVER को न हटाएं। -Vm या Xmx विकल्पों को हटाना भी बेमानी है। यदि आप करते हैं, तो आप परेशानी पूछ रहे हैं।

आपकी समस्या से संबंधित विकी पृष्ठ के संदर्भ यहां दिए गए हैं:

Reference_1

Reference_2


1
उल्लेख करने के लिए एक सरल लेकिन महत्वपूर्ण संकेत: eclipse.ini में विकल्प से पहले-vm रखा जाना चाहिए । -vmargs
वुड्ज १३'१

0

मेरे लिए यह पथ पर्यावरण चर में JDK बिन पथ को बदलकर हल किया गया। JDK बिन पथ रखो, जिसमें JDK घर के नीचे jre / bin / client / jvm.dll है।


0

ISSUE हल करने के लिए कदम: -

  1. अपने ग्रहण फ़ोल्डर से eclipse.ini फ़ाइल खोलें।

  2. यह विन्यास पर कुछ जोड़ने की है। लाइन ढूंढें -launcher.XXMaxPermSize.It इस फ़ाइल में अंतिम पंक्ति होगी। अब डिफ़ॉल्ट मान 256 मी को हटा दें या हटा दें और इसे सहेजें।



0

मैं उसी समस्या का सामना कर रहा था, और मुझे इसका हल मिल गया। MaxPermSize के आवंटन में समस्याएं हैं। यदि आप अपनी मशीन के खाली स्थान से अधिक आवंटित करने का प्रयास करते हैं तो यह मेरे अंक में यह त्रुटि देता है। इसलिए MaxPermSize को कम करने का प्रयास करें।

मुझे लगता है कि इससे आपको अपने मुद्दे को सुलझाने में मदद मिलेगी।


0

ये सभी उपाय मुझे विफल हो गए। छह महीने के लिए ग्रहण का उपयोग करने के बाद नीले रंग से मेरे साथ ऐसा हुआ। ऐसा लगता है कि किसी तरह मेरा JDK भ्रष्ट हो गया।

मेरा अंतिम समाधान एक नया JDK डाउनलोड करना और मेरे JAVA_HOME को तदनुसार अपडेट करना था, मेरे मामले में jdk1.6.0_37 से jdk1.6.0_43 तक।


0

@ मेरे लिए यह बहुत सरलता से काम किया!

त्रुटि संदेश चेतावनी मिलने के बाद, मैंने कमांड प्रॉम्प्ट से 'एक्लिप्स सी।। एक्स' को निष्पादित किया । इससे ग्रहण खुल गया। फिर मैंने 'eclipse.exe' के साथ कोशिश की और अब यह अच्छा और अच्छा काम कर रहा है।

दुर्भाग्य से, इसने इसके लिए कोई तकनीकी कारण नहीं दिया।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.