Impossibile caricare la libreria condivisa JNI all'avvio di Eclipse


27

Ho scaricato l'ultima versione di Eclipse, ma non riesco ad avviarla.

Il messaggio di errore che ricevo è:

Impossibile caricare la libreria condivisa JNI "C: \ Programmi (x86) \ Java \ jdk1.6.0_20 \ bin .. \ jre \ bin \ client \ jvm.dll".

Come posso risolvere questo problema?

Uso Windows a 64 bit, JDK a 32 bit e Eclipse a 64 bit scaricato.


È strano. Il file jvm.dll deve essere in C: \ Programmi (x86) \ Java \ jdk1.6.0_20 \ jre \ bin \ client \ jvm.dll, non in C: \ Programmi (x86) \ Java \ jdk1.6.0_20 \ bin \ ...
AndrejaKo

Risposte:


34

Questo di solito accade se si ha una discrepanza tra 32 e 64 bit tra le versioni JDK ed Eclipse installate!

La tua versione di Eclipse sta tentando di accedere a un JDK a 32 bit (come indicato da C: \ Programmi (x86) ), ma non riesce perché Eclipse si aspetta un JDK a 64 bit o perché manca il JDK a 32 bit - di conseguenza dovrai assicurarti di abbinare le versioni Eclipse e JDK in modo leggermente saggio.


Uso Windows a 64 bit, JDK a 32 bit e ho scaricato Eclipse a 64 bit. Ora con Eclipse a 32 bit funziona meglio, grazie.
Jonas,

@Jonas - Ho rimosso i presupposti errati sulle versioni installate, grazie per averlo sottolineato specificando la tua configurazione.
Steffen Opel,

3

Avevo installato entrambe le versioni JDK ed Eclipse a 64 bit, ma avevo lo stesso problema ...

Alla fine ho scoperto che la mia %PATH%variabile di sistema non includeva la cartella. Non dimenticare di cambiarlo nella cartella corretta in cui è installato JDK \ bin. Ha funzionato per me.


2
-startup
plugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.2.R36x_v20101222
-product
org.eclipse.epp.package.java.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
-vm
C:/Program Files/Java/jdk1.6.0_32/jre/bin
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m

usa eclipse e os sia a 64 bit o entrambi a 32 bit


1

Su Windows 7 hai la possibilità di utilizzare i collegamenti simbolici come in unix.

Quindi con cmd(esegui come amministratore), esegui quanto segue: mklink /d jdk jdk-versionnr-etcnon è necessario aggiornare il tuo percorso, JAVA_JOMEla prossima volta che aggiorni Java!


1

Avevo un Eclipse a 64 bit e un Java a 32 bit e avevo lo stesso problema. Dopo aver installato Java a 64 bit e aver aggiornato il percorso di sistema , nessun problema.


1

Se è stato scaricato Eclipse a 64 bit e JDK / JRE a 64 bit, verificare la disponibilità di javaw.exe per 64 bit.

Nel mio caso era dentro C:\Program Files\Java\jre6\bin

Ho estratto Eclipse nella c:\eclipsecartella; all'interno del quale il eclipse.inifile è disponibile. Sostituisci il contenuto di quel file con il seguente:

-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256M
-vm
C:\Program Files\Java\jre6\bin\javaw.exe
-framework
plugins\org.eclipse.osgi_3.4.3.R34x_v20081215-1030.jar
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xmx700m
-XX:MaxPermSize=690M

Lascia la nuova linea tra il flag -vm e il valore. Ha funzionato per me.


Grazie. Tutto ciò che ho fatto è stato copiare la riga "-vm C: \ Program Files \ Java \ jre6 \ bin \ javaw.exe" Ho lasciato tutto il resto uguale.
Stopher87

0

Stavo affrontando lo stesso problema anche se avevo versioni a 64 bit di JDK ed Eclipse. Ho scoperto che il percorso JDK mancava in eclipse.ini.

Quindi ho aggiunto le seguenti righe nel file eclipse.ini:

-vm
C:\Program Files\Java\jdk1.7.0_45\jre\bin <this might be different on your machine>

Questo ha risolto il problema! :-)



0

1. Disinstallare jdk7.1 disponibile (era a 64 bit) 2. Jdk7.1 scaricato e installato a 32 bit. Il jvm.dll sarà nel percorso seguente: "C: \ Programmi (x86) \ Java \ jdk1.7.0_75 \ jre \ bin \ client"

Spero funzioni.


0

Per elaborare la risposta di Steffen Opel, si verifica una mancata corrispondenza tra la JVM specificata nel file eclipse.ini e la JVM rilevata e avviata a seguito delle voci sulla variabile di ambiente del percorso di Windows. Quindi, per risolvere il problema, assicurati che entrambi facciano riferimento alla stessa JVM.

Per risolvere il problema, attenersi alla seguente procedura:

1. Modifica la configurazione di Eclipse in modo che si
avvii con la versione desiderata di JVM Apri eclipse.ini e modifica la riga seguente nella versione java che desideri utilizzare, ad esempio:

-Dosgi.requiredJavaVersion=1.5

2. Assicurarsi che Eclipse possa accedere alla JVM che richiede
Vai al pannello di controllo -> Modifica variabili di ambiente di sistema -> Percorso.
    a) Assicurati che esista una voce qui sul tuo java
    b) Assicurati che questa voce sia più alta (o precedente) di qualsiasi altro percorso java all'interno della tua voce @path.

Spero che questo dovrebbe risolvere il problema per te.


0

Sebbene questa sia una vecchia domanda, ho pensato di aggiungere alcune informazioni più rilevanti alla risposta accettata data da @Steffen Opel.

È possibile installare un numero qualsiasi di versioni di JDK a 32 bit e JDK a 64 bit in un sistema operativo Windows a 64 bit. Inoltre è possibile installare 32 bit Eclipse e 64 bit Eclipse nello stesso computer come bene. Ma per eseguire una di quelle piattaforme legate Eclipse (in caso PO 64 bit Eclipse ) versione, la macchina dovrebbe avere matching “ Variabili d'ambiente ” configurati per JDK. Questo può essere fatto (dovrebbe essere fatto) senza modificare il file eclipse.ini .

variabili ambientali

Per eseguire java senza fornire il percorso completo, è necessario aggiungere il percorso del file per java.exe alla PATHvariabile di ambiente. E anche per alcune altre utility di terze parti, JAVA_HOMEè richiesta anche la variabile di ambiente.

Normalmente gli sviluppatori Java devono sempre avere JDK installato (JRE è incluso in JDK). Ed PATHè impostato sulla cartella " bin " nella cartella di installazione JDK (nel caso OP C: \ Programmi \ Java \ jdk1.6.0_40 \ bin ) mentre JAVA_HOMEè impostato nella cartella di installazione JDK (nel caso OP C: \ Programmi \ Java \ jdk1.6.0_40 ).

Qui OP ha solo JDK a 32 bit ma cerca di usare Eclipse a 64 bit. Quindi, per risolvere il problema, l'OP deve installare JDK a 64 bit. E cambia JAVA_HOME& PATH" Variabili d'ambiente " per abbinare quella posizione di installazione.

Ecco i passaggi più completi:

  • Scarica e installa 64-bit JDKx.x.x_xx
  • Quindi apri Esplora risorse, fai clic con il tasto destro sull'icona Computer e seleziona

    Proprietà -> Impostazioni di sistema avanzate .
    Si aprirà la finestra Proprietà del sistema e nella scheda " Avanzate " selezionare " Variabili d'ambiente " per aprire la finestra di modifica.

  • Nella sezione Variabili di sistema cerca il JAVA_HOMEnome della variabile e fai clic sul pulsante " Modifica " nella sezione inferiore, se non disponibile fai clic su " Nuovo " e inserisci C: \ Programmi \ Java \ jdk1.6.0_40 e fai clic su OK.

  • Quindi selezionare la PATHvariabile e fare clic su " Modifica " e aggiungi %JAVA_HOME%\bin; all'inizio o %JAVA_HOME%\binalla fine della stringa esistente. NON sovrascrivere la stringa esistente e fare clic su OK -> OK -> OK per completare.

Ora Eclipse sarà aperto senza errori.

Nota:

  • Se qualcuno deve utilizzare Eclipse a 32 bit, il percorso JDK predefinito sarà C: \ Programmi (x86) \ Java \ jdkx.x.x_xx

  • Quando si cambiano le PATHvariabili di ambiente in Windows 10, viene visualizzata una finestra aggiuntiva, come mostrato nella figura seguente.

inserisci qui la descrizione dell'immagine


0

Avevo affrontato lo stesso problema ma ho ottenuto la soluzione.

Controlla se Eclipse è a 32 o 64 bit, quindi

  1. Se è a 32 bit, imposta JAVA_HOME sulla versione a 32 bit di jdk
  2. Se Eclipse è a 64 bit, impostare JAVA_HOME sulla versione a 64 bit di jdk
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.