Parandus: Java virtuaalset masinat ei õnnestunud luua

Mõnel kasutajal tekib Java- rakendust käivitava rakenduse käivitamisel tõrge Java Virtual Machine'i loomine ebaõnnestus. Teatakse, et see konkreetne probleem ilmneb Minecrafti ja paljude teiste Java ümber ehitatud rakenduste puhul.

Java virtuaalset masinat ei õnnestunud luua.  Viga: on toimunud surmav erand.  Programm väljub.

Mis põhjustab viga Java Virtual Machine loomine nurjus?

Uurisime seda konkreetset probleemi, vaadates erinevaid kasutajaaruandeid ja tõrkeotsingu strateegiaid, mida nad sama veateate lahendamiseks kasutasid. Nende järelduste põhjal on selle konkreetse probleemi käivitamiseks paar stsenaariumi:

  • Java-le tuginevad valed argumendid või valikud - see võib juhtuda siis, kui käitate kodus valmistatud rakendust või proovite avada avatud lähtekoodiga rakendust, mis teadaolevalt põhjustab süsteemi ebastabiilsust.
  • Java globaalse maksimaalne hunnik mälu ei ole piisavalt kõrge - Üks kõige tavalisemaid põhjusi, miks võid sattuda selle konkreetse viga on, kui proovite käivitada Java rakendus, mille maksimaalne hunnik mälu suurus suurem kui üks komplekt nagu süsteemne muutuja .
  • Java käivitatava faili ja / või rakenduse jaoks on vaja administraatoriõigusi - see võib juhtuda rakendustega, mis vajavad korrektseks toimimiseks administraatori juurdepääsu.

Kui otsite praegu vea „Java virtuaalseadet ei õnnestunud luua” lahendamist , pakub see artikkel teile mitu kontrollitud tõrkeotsingustrateegiat. Allpool on toodud meetodite kogu, mida teised sarnases olukorras olevad kasutajad on probleemi lahendamiseks kasutanud.

Parimate tulemuste tagamiseks järgige alltoodud meetodeid nende esitamise järjekorras, kuni leiate meetodi, mis on teie konkreetse stsenaariumi korral vea lahendamiseks tõhus.

1. meetod: _JAVA_OPTIONS lisamine muutujate hulka

Enim mõjutatud kasutajatel õnnestus probleem lahendada, luues Java jaoks süsteemimuutuja nimega _JAVA_OPTIONS ja määrates selle väärtuseks Xmx512M . Mida see sisuliselt teeb, on see, et see määrab Java-le ülemaailmse maksimaalse hunniku mälu.

See lahendab kõik tõrketeated, mis ilmnevad, kuna käivitatud Java-rakenduse hunnikmälu maksimaalne suurus on suurem kui süsteemimuutujaks määratud. Mitmed sama probleemiga kokku puutunud kasutajad on teatanud, et probleem lahenes täielikult pärast nende toimingute tegemist allpool.

Hunnikmälu ülemaailmse suuruse suurendamiseks peate süsteemi muutujate kirje _JAVA_OPTION S lisamiseks tegema järgmist .

  1. Press Windows klahv + R avada Run dialoogiboks. Seejärel tippige süsteemi atribuutide ekraani avamiseks tippige “ sysdm.cpl ” ja vajutage sisestusklahvi .
  2. Toas System Properties ekraani minna Täpsem ning klõpsake keskkonna muutujate kohta.
  3. Kui keskkonnamuutuja s aken, klõpsake New (all süsteemi muutujad ).
  4. Toas uus süsteem Muutuja akna seada muutuja nimi , et _JAVA_OPTIONS ja muutuja väärtus on - Xmx512M ja klõpsake Ok muudatused salvestada.
  5. Muudatuste jõustamiseks sulgege varem avatud aknad ja taaskäivitage oma masin.
  6. Järgmisel käivitamisel avage rakendus, mis näitas varem viga Java Virtual Machine loomine ebaõnnestus, ja vaadake, kas see töötab nüüd korralikult.
Süsteemimuutuja nimega _JAVA_OPTIONS loomine ja sellele väärtuse Xmx512M omistamine

Kui sa ikka sama veateate alguses taotluse, proovige lisada Java Bin tee, mis võib olla sarnane "% \ kasutajatee \ Java \ jdk1.6.0_39 \ bin" keskkonnamuutuja nagu on märgitud ülaltoodud meetodit ja vaadake, kas see töötab.

2. meetod: java.exe avamine administraatori õigustega

Mitmel sama probleemi lahendamisega võitleval kasutajal on õnnestunud probleem lahendada pärast Java peamise käivitatava faili (java.exe) administraatoriõigustega avamise sundimist.

Mõned kasutajad teatasid, et nad said pärast selle paranduse rakendamist nii Java peamisele kui ka tõrketeadet kuvava rakenduse käivitatavale failile selle probleemi lahendada.

Siin on kiire juhend kogu asja kohta:

  1. Avage File Explorer ja navigeerige oma Java installi asukohta. Peame jõudma Java peamise käivitatava faili ( java.exe ) asukohta . Vaikimisi peaksite selle leidma menüüst Program Files / Java / * JRE build version * / bin. Täpne asukoht erineb sõltuvalt sellest, millist Java Runtime Environmentit kasutate.Navigeerige java.exe asukohta

    Märkus. Kui installisite Java kohandatud asukohta, navigeerige selle asemel kohandatud asukohas.

  2. Paremklõpsake java.exe ja valige Atribuudid . Seejärel minge vahekaardile Ühilduvus ja märkige ruut Käivita see programm administraatorina (jaotises Seaded). Muudatuste salvestamiseks klõpsake nuppu Rakenda .minge vahekaardile Ühilduvus ja lubage selle programmi käivitamine administraatorina
  3. Paremklõpsake rakenduse käivitataval failil (sellel, mis käivitab tõrke) ja korrake sama protseduuri: Ühilduvus> Käivitage see programm administraatorina> Rakenda .
  4. Käivitage rakendus ja vaadake, kas tõrketeade on lahendatud.

3. meetod: Java uuesti installimine

Mõnel juhul käivitub tõrge, kuna Java ei pruugi olla õigesti installitud või selle installimine võib olla aja jooksul rikutud. Seetõttu installime selles etapis Java pärast selle täielikku desinstallimist uuesti. Selle eest:

  1. Käivitamisviiba avamiseks vajutage Windowsi klahvi + R ja tippige „Appwiz.cpl”.
  2. Vajutage sisestusklahvi (Enter) ja avaneb programmide ja funktsioonide ekraan.
  3. Kell Programmid ja funktsioonid kerige läbi installitud rakenduste loend kuni leiad Java.
  4. Paremklõpsake sellel ja valige käsk „Desinstalli”, et see süsteemist täielikult eemaldada
  5. Kõigepealt kustutage esmane Java-install ja hiljem peaksite eemaldama ka kõik muud Java-installid, näiteks värskendused ja muud versioonid.
  6. Pärast kogu installi desinstallimist taaskäivitage arvuti.
  7. Pärast käivitamist külastage seda linki ja laadige alla JRE uusim versioon.
  8. Kontrollige, kas probleem püsib.
  9. Kui viga ei kao, laadige siit alla ja installige JDK uusim versioon.

    Märkus. Kui kasutate juba JDK-d, proovige muuta selle versioone või desinstallida koos sellega installitud JRE.

  10. Kontrollige, kas probleem on endiselt olemas.

4. meetod: vigade parandamine koodiga

Selle tõrke taga on erinevad põhjused ja mõned neist hõlmavad ka seda, kui teie koodiga on mõni konkreetne viga. Järgnevalt toome välja mõned.

  • Sidekriipsu eemaldamine : Mõned kasutajad märkisid, et viga parandati, muutes kahekordse sidekriipsu „-“ oma koodis üheks. Näiteks:

    Muutke koodi

    “Sony @ sony-VPCEH25EN: ~ $ java –versioon

    Picked up JAVA_TOOL_OPTIONS: -javaagent:/usr/share/java/jayatanaag.jar

    Unrecognized option: –version

    Error: Could not create the Java Virtual Machine.

    Error: A fatal exception has occurred. Program will exit.”

    To

    “sony@sony-VPCEH25EN:~$ java -version

    Picked up JAVA_TOOL_OPTIONS: -javaagent:/usr/share/java/jayatanaag.jar

    Unrecognized option: –version

    Error: Could not create the Java Virtual Machine.

    Error: A fatal exception has occurred. Program will exit.”

  • Also, Try removing the following line from your argument

    -Djava.endorsed.dirs=”C:\Program Files\Apache Software Foundation\Tomcat 8.5\endorsed”

  • Open your eclipse.ini file and make sure that you add the “-vm” entry above the vm args otherwise, JVM V6 will be selected in env vars.
  • If on Ubuntu, you should know that Java 8 is the only version that is supported. Therefore, using the third method. Uninstall Java, and install the previous version.

Method 5: Editing Eclipse.ini File

We can also tweak things inside the Eclipes.ini File to get rid of this issue. There might be a couple of issues with its configuration that need to be addressed therefore, we have divided it into separate issues. Follow the one which suits your scenario the best.

Lowering Memory Use

  1. Open the Eclipse.ini file inside the Eclipse folder with notepad.
  2. Find the line similar to “-Xmx256m” (It might be -Xmx1024m or -Xmx 512m).
  3. Now change the default value to a more reasonable figure depending upon the RAM installed on your computer and add the version number to it as well. For Example:
    -Xmx512m -Dosgi.requiredJavaVersion=1.6 OR -Xmx512m -Dosgi.requiredJavaVersion=1.7 OR -Xmx512m -Dosgi.requiredJavaVersion=1.8
  4. Also, try removing the “256m” value from the “-launcher.XXMaxPermSize” line.
  5. Check to see if the issue persists.

Tinkering Around

  1. Try to remove the following lines from your file.
    -vm P:\Programs\jdk1.6\bin
  2. Also, change the following lines.
    set -Dosgi.requiredJavaVersion=1.5 TO set -Dosgi.requiredJavaVersion=1.6
  3. Also, try adding the following line above “-vmargs!” line.
    -vm C:\Program Files (x86)\Java\jre6\bin\javaw.exe
  4. Also, point to JVM.dll using the following line.
    -vm C:\Program Files\Java\jre7\bin\client\jvm.dll
  5. Open the Eclipse file and replace “-vmargs” with the path of javaw.exe. For Example:
    -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
  6. Also, you can place the following line at the end and check if that works.
    -vmargs -Xms40m -Xmx512m -XX:MaxPermSize=256m
  7. Furthermore, try removing the following lines from the eclipse.ini and check if that works.
    -XX:+UseStringDeduplication -XX:+UseG1GC
  8. Võite ka proovida faili eclipse.ini eemaldada, kui probleem püsib, kuna see on väidetavalt mõne probleemi lahendanud, kuid pidage meeles, et kõigepealt peate selle varundama. Samuti proovige enne Java käivitamist sulgeda kõik energianäljased rakendused, et veenduda, kas ressursid on õiged.

JDK korruptsiooni kontrollimine

  1. Käivitamisviiba avamiseks vajutage klahve „Windows” + „R” ja tippige „cmd”.
  2. Sisestage järgmine käsk ja kontrollige, kas see annab vea.
    c: \> java -versioon
  3. Kui see annab tõrke, installige JDK täielikult uuesti.