11 Vea „Java virtuaalmasina loomine ebaõnnestus” parandamine

11 Vea „Java virtuaalmasina loomine ebaõnnestus” parandamine

Tänaseni on Java populaarne programmeerimiskeel. See võib olla aegunud, kuid aja jooksul pole see oma populaarsust ja kasulikkust kaotanud. See on endiselt aktiivses arenduses ja seda kasutavad paljud arendajad. Keele muudatusi ja täiustusi arendatakse regulaarselt, mis muudab Java-põhiste rakenduste kompileerimise ja käitamise lihtsamaks.

Mis on Java lihtsate sõnadega?

Java on laialdaselt kasutatav programmeerimiskeel, mida saab kasutada mitmesugustes operatsioonisüsteemides ja seadmetes. Sellel on palju rakendusi, sealhulgas veebiarendus, mobiilirakendused, töölauarakendused ja serveripoolne programmeerimine.

Java loob selles keeles kirjutatud koodi käitamiseks virtuaalse masina (VM). Kui Java virtuaalmasina töödeldavate andmete või koodiga läheb midagi valesti, ei pruugi Java virtuaalmasina käivitumine õnnestuda.

Mis on Java virtuaalmasina viga?

Java virtuaalmasina tõrge, mida sageli nimetatakse JVM-i veaks, on Java virtuaalmasina genereeritud tõrketüüp. See tõrge näitab tavaliselt, et arvuti ei saa koodi lugeda ega sellest aru saada.

See tõrge võib ilmneda erinevatel põhjustel, sealhulgas siis, kui arvutisse pole installitud vajalikke värskendusi või see ei ühildu Javaga. Äärmiselt oluline on mõista, kuidas lahendada JVM-iga seotud probleem, kui see tekib arvuti kasutamisel.

Oleme viimastel päevadel teada saanud, et mõned kliendid näevad veateadet „Java virtuaalmasina loomine ebaõnnestus”. Meie uuringu kohaselt tekib probleem tavaliselt siis, kui kasutaja proovib Java-põhist programmi käivitada.

Mis põhjustab tõrke „Java virtuaalmasina loomine ebaõnnestus”?

Selle probleemi põhjuseks on mitu tingimust:

  • Java käivitatakse valede argumentide või suvanditega: kui käivitate omatehtud programmi või proovite avada avatud lähtekoodiga rakendust, mis teadaolevalt põhjustab süsteemi ebastabiilsust.
  • Java globaalsest maksimaalsest hunniku mälust ei piisa: selle probleemi üks levinumaid põhjuseid on katse käivitada Java-rakendust, mille maksimaalne mälumaht on suurem kui süsteemimuutujas määratud.
  • Java käivitatava faili ja/või programmi jaoks on vaja administraatori mandaate: see võib juhtuda rakenduste puhul, mis vajavad korrektseks toimimiseks administraatori juurdepääsu.

Kui proovite välja mõelda, kuidas lahendada probleemi „Java virtuaalmasinat ei saanud luua”, pakub see artikkel teile mõningaid tõestatud lahendusi. Allpool on loetelu lahendustest, mida teised sarnase stsenaariumiga inimesed on oma probleemide lahendamiseks kasutanud.

Parimate tulemuste saavutamiseks proovige allolevaid lahendusi nende pakutavas järjekorras, kuni leiate lahenduse, mis teie konkreetses olukorras sobib.

Kuidas Java virtuaalmasina viga parandada?

Siin on lahendused Java virtuaalmasina vigade parandamiseks:

  1. _JAVA_OPTIONS lisamine süsteemimuutujatele
  2. Java.exe avamine administraatoriõigustega
  3. Installige Java uuesti
  4. Vigade parandamine koodiga
  5. Faili Eclipse.ini redigeerimine
  6. Kontrollige ühilduvat Java versiooni
  7. Värskendage muutujaid Path ja Java Home Environment.
  8. Kontrollige käivitamise argumente
  9. Kontrollige süntaksit
  10. Kontrollige mälu paigutust
  11. Suurendage JVM-i (Java virtuaalmasina) RAM-i eraldamist

Vaatleme iga lahendust eraldi:

Lahendus 1: _JAVA_OPTIONS lisamine süsteemimuutujatele

Enamik mõjutatud kliente suutsid probleemi lahendada, muutes Java süsteemimuutuja nimega _JAVA OPTIONS väärtuseks Xmx512M. See määrab tõhusalt Java globaalse maksimaalse mälukuhja suuruse.

See välistab kõik veateated, kuna süsteemimuutujas määratletud maksimaalne kuhjamälu suurus on suurem kui Java käivitusrakenduses määratud maksimaalne kuhja mälumaht. Mitmed sama probleemiga kliendid on teatanud, et pärast allolevate juhiste järgimist lahenes probleem täielikult.

Globaalse kuhja mälumahu suurendamiseks lisage oma süsteemimuutujatele element _JAVA OPTIONS järgmiselt.

1. Dialoogiboksi Käivita avamiseks vajutage Windowsi klahvi + R. Seejärel lehe Süsteemi atribuudid avamiseks tippige sysdm.cpl ja vajutage sisestusklahvi.

2. Klõpsake vahekaarti Advanced ja valige System Properties (Süsteemi atribuudid) lehel Environment Variables (Keskkonnamuutujad).

3. Klõpsake väljal Environment Variables (süsteemimuutujate all) nuppu Uus.

4. Määrake paneelil New System Variable muutuja nimeks _JAVA OPTIONS ja muutujaks -Xmx512M, seejärel klõpsake muudatuste salvestamiseks nuppu OK.

5. Muudatuste jõustumiseks sulgege kõik varem avatud aknad ja taaskäivitage arvuti.

6. Järgmisel käivitamisel avage programm, mis andis varem veateate „Java virtuaalmasina loomine ebaõnnestus”, et näha, kas see töötab õigesti.

Kui saate programmi käivitamisel endiselt sama tõrketeate, proovige lisada Java prügikasti tee keskkonnamuutujale, mis võib olla „%\USER PATH\Java\jdk1.6.0_39\bin”.

Lahendus 2 – java.exe avamine administraatoriõigustega

Mitmed sama probleemiga inimesed on suutnud selle lahendada, sundides peamise Java käivitatava faili (java.exe) administraatorina avama.

Pärast selle värskenduse rakendamist nii peamisele Java käivitatavale kui ka tõrketeadet kuvavale programmi käivitatavale failile teatasid mitmed kasutajad, et probleem on lahendatud.

Siin on kõige lühikirjeldus:

1. Liikuge File Exploreris Java installimiskohta. Peame navigeerima Java käivitatava faili (java.exe) peamisse asukohta.

Vaikimisi peaks see olema kaustas Program Files/Java/*JRE build version*/bin. Sõltuvalt kasutatavast Java käituskeskkonnast on täpne asukoht erinev.

2. Valige kontekstimenüüst “Properties”, paremklõpsates failil java.exe. Seejärel valige vahekaardil Ühilduvus “Käita seda tarkvara administraatorina” ja märkige ruut (jaotises Seaded). Muudatuste salvestamiseks klõpsake nuppu Rakenda.

3. Korrake protseduuri, paremklõpsates rakenduse käivitatavat faili (mis põhjustas vea): Rakendus > Ühilduvus > Käivita see tarkvara administraatorina.

4. Kontrollige, kas probleemiteade on programmi käivitamisega lahendatud.

Ebapiisavad administraatoriõigused võivad samuti Java virtuaalmasinaga probleeme tekitada. Seetõttu võivad mõned kasutajad anda Java administraatori õigused.

Kasutajad saavad ülaltoodud samme järgides anda Java administraatori juurdepääsu operatsioonisüsteemis Windows 10.

Lahendus 3: Java uuesti installimine

Mõnel juhul ilmneb probleem seetõttu, et Java installiti valesti või kuna selle installimine sai aja jooksul rikutud. Selle tulemusena installime pärast Java täielikku desinstallimist selle praegu uuesti. Selle jaoks:

1. Käivita viipa sisenemiseks vajutage Windowsi klahvi + R ja tippige „Appwiz.cpl” või minge otse juhtpaneelile.

2. Pärast sisestusklahvi vajutamist ilmub programmide ja funktsioonide ekraan.

3. Kerige installitud rakenduste loendit ekraanil Programmid ja funktsioonid, kuni leiate Java.

4. Selle süsteemist eemaldamiseks paremklõpsake sellel ja valige käsk Eemalda.

5. Esmalt desinstallige Java põhiinstallatsioon ja seejärel kõik täiendavad Java installid, sealhulgas värskendused ja muud versioonid.

6. Pärast kogu tarkvara eemaldamist taaskäivitage arvuti.

7. Pärast taaskäivitamist minge sellele lehele ja laadige alla uusim JRE.

8. Kontrollige, kas on probleem.

9. Kui probleem püsib, minge siia, et hankida ja installida uusim JDK.

10. Kui kasutate juba JDK-d, kaaluge uuele versioonile üleminekut või sellega kaasasoleva JRE eemaldamist.

Lahendus 4: parandage vead koodiga

See tõrge võib ilmneda erinevatel põhjustel, sealhulgas juhul, kui teie koodis on teatud vigu. Vaatleme siin mõnda neist.

Eemaldage sidekriips: mõned kasutajad teatasid, et topeltsidekriipsu “-” asendamine nende koodis ühe sidekriipsuga “-” lahendas probleemi. Kaaluge järgmist stsenaariumi:

Muuda koodi:

“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. The 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. The program will exit.”

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

Veenduge, et teie failis eclipse.ini oleks vm-argumentide kohale lisatud kirje „-vm”. Vastasel juhul valib env vars JVM V6.

Kui kasutate Ubuntut, peaksite teadma, et toetatakse ainult Java 8. Selle tulemusena kasutatakse kolmandat lähenemisviisi. Installige Java vana versioon pärast praeguse desinstallimist.

Lahendus 5: faili Eclipse.ini redigeerimine

Selle probleemi lahendamiseks saame teha muudatusi failis Eclipes.ini. Oleme selle jaotanud erinevateks probleemideks, kuna selle seadistamisel võib esineda mitmeid probleeme, mida tuleb lahendada. Valige see, mis teie olukorrale kõige paremini sobib.

Vähendatud mälukasutus

1. Avage märkmiku abil kaustas Eclipse fail Eclipse.ini.

2. Otsige joont, mis näeb välja nagu “-Xmx256m” (see võib olla -Xmx1024m või -Xmx 512m).

3. Nüüd, olenevalt arvutisse installitud RAM-ist, muuda vaikesumma mõistlikuma numbri vastu ja lisa versiooninumber. Kaaluge järgmist stsenaariumi:

-Xmx512m
-Dosgi.requiredJavaVersion=1.6
OR
-Xmx512m
-Dosgi.requiredJavaVersion=1.7
OR
-Xmx512m
-Dosgi.requiredJavaVersion=1.8

4. Eemaldage realt “-launcher.XXMaxPermSize” number “256m”.

5. Kontrollige, kas probleem on olemas.

ringi askeldamas

1. Võimalusel eemaldage failist järgmised read.

-vm P:\Programs\jdk1.6\bin

2. Muutke ka järgmisi ridu.

set -Dosgi.requiredJavaVersion=1.5

TO

set -Dosgi.requiredJavaVersion=1.6

3. Proovige lisada ka rea ​​”-vmargs!” kohal järgmine rida.

-vm C:\Program Files (x86)\Java\jre6\bin\javaw.exe

4. Kasutage JVM.dll-i viitamiseks ka järgmist rida.

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

5. Asendage “-vmargs” faili javaw.exe teega Eclipse’i failis. Kaaluge järgmist stsenaariumi:

-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. Samuti võite proovida lisada lõppu järgmise rea, et näha, kas see aitab.

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

7. Samuti vaadake, kas eclipse.ini järgmiste ridade eemaldamine lahendab probleemi.

-XX:+UseStringDeduplication

-XX:+UseG1GC

Kui probleem püsib, võite proovida faili eclipse.ini kustutada, mis näib olevat mõne inimese jaoks probleemi lahendanud, kuid loob eelnevalt varukoopia, kui seda vajate. Samuti veenduge enne Java käivitamist, et kõik energiat nõudvad rakendused on suletud, et tagada piisavate ressursside olemasolu.

JDK korruptsiooni kontrollimine

1. Viipa Run käivitamiseks vajutage Windows + R ja tippige cmd.

2. Kontrollige, kas järgmine käsk tagastab vea.

c:>\ java -version

3. Kui ilmneb probleem, installige JDK täielikult uuesti.

Lahendus 6 – kontrollige ühilduvat Java versiooni

Kui kood on IDE-s kompileeritud, kuvatakse teade Java virtuaalmasina loomine ebaõnnestus. Põhjus on selles, et IDE ei ühildu teie arvutisse installitud Java versiooniga.

Kontrollige, milliseid Java versioone teie IDE toetab. Seejärel tehke kindlaks, milline Java on installitud, ja võrrelge seda toetatud versiooniga. Installige õige versioon, kui see pole veel installitud.

Lahendus 7 – värskendage teed ja Java kodukeskkonna muutujaid

Operatsioonisüsteemis Windows 10 võivad keskkonnamuutujatesse määratud Java suvandid põhjustada tõrketeate Java virtuaalmasina loomine ebaõnnestus.

1. Avage File Explorer.

2. Kopeerige ja kleepige aadressiriba explorer shelli järgmine tekst:::{BB06C0E4-D293-4f75-8A90-CB05B6477EEE}

3. Valige vasakpoolsel paanil Täpsemad süsteemisätted.

4. Valige rippmenüüst valik „Täpsem”.

5. Jaotises Süsteemimuutujad valige Keskkonnamuutujad ja seejärel Uus.

6. Sisestage nimeväljale _JAVA OPTIONS.

7. Sisestage tee/väärtuse väljale -Xmx1024M.

8. Klõpsake nuppu OK.

9. Taaskäivitage rakendus.

Samuti peaksite veelkord kontrollima, kas Java SDK jaoks on õige tee.

1. Liikuge File Explorer\Java kausta C:\Program Files.

2. Avage selle JDK versiooni kaust, mida soovite kasutada.

3. Kausta tee tuleb kopeerida.

4. Muutujad keskkonnas (vt eelnevaid samme).

5. Valige süsteemimuutujate menüüst JAVA HOME.

6. Valige Muuda.

7. Pärast kopeeritud tee sisestamist klõpsake nuppu OK.

Lahendus 8 – kontrollige käivitusargumente

Kontrollige oma algseadeid. Kuigi teil võib olla installitud õige Java versioon, võivad käivitusvalikud muuta kompileerimiseks kasutatud versiooni. Kui tegite Java kohapealse versiooniuuenduse, on tõenäoline, et käivitusvalikud pärinevad endiselt varasemast versioonist.

Lahendus 9 – kontrollige süntaksit

Veenduge, et kõigi sisestatud valikute süntaks oleks õige. Probleemi “Java virtuaalmasinat ei saanud luua” võib põhjustada isegi väikseim viga. Otsige lisa sidekriipsu või valesti määratud versiooni.

Lahendus 10 – kontrollige mälu eraldamist

Kasutamiseks eraldatud ebapiisav mälu on üks peamisi probleemi põhjuseid. Java virtuaalmasina loomine ebaõnnestus.

1. Avage File Explorer.

2. Minge kausta C:\Program Files\Java.

3. Avage installitud versiooninumbriga JDK kaust.

4. Otsige üles ja käivitage fail jvisualvm.exe.

5. Tarkvara pakub mälu haldamiseks graafilist kasutajaliidest.

6. Suurendage mälumahtu ja proovige uuesti.

Lahendus 11 – suurendage JVM-i (Java virtuaalmasina) RAM-i eraldamist

Nende muudatuste tegemiseks peavad teil olema administraatori õigused.

1. Vajutage korraga Windowsi klahvi ja Pause Break nuppu.

2. Ilmuvas uues aknas valige Täpsemad süsteemisätted.

3. Klõpsake ilmuva System Properties akna allosas nuppu Environment Variables (Keskkonnamuutujad).

4. Ilmub keskkonnamuutujate aken. Klõpsake jaotises Süsteemimuutujad nuppu Uus.

5. Ilmub uue süsteemimuutuja aken. Täitke lüngad sobivate väärtustega.

  • _JAVA OPTIONS on muutuja nimi.
  • -Xmx512M on muutuv väärtus.

6. Klõpsake nuppu OK.

6. Klõpsake jaotises Keskkonnamuutujad nuppu OK.

Järeldus

Arenduskeskkonna seadistamine võib võtta kaua aega. Enne koodi kirjutamist või kompileerimist peate seadistama palju asju ja täitma palju eeltingimusi. Need probleemid ei ole Java spetsiifilised; igal keelel on oma eeldused, mis peavad olema täidetud enne selle kasutamist.

Lisa kommentaar

Sinu e-postiaadressi ei avaldata. Nõutavad väljad on tähistatud *-ga