2012-01-24 8 views
6

sto usando Eclipse su quello che ho pensato che fossero tutti gli ambienti di runtime a 64 bit. Le impostazioni correnti Java> JREs ed Execution Environment puntano tutte a jdk1.6.0_30 che è una versione a 64 bit del JDK. Tuttavia, eclissi pensa ancora che è in esecuzione una versione a 32 bit, perché quando ho eseguito:Come riconfigurare eclissi di utilizzare un 64 bit JVM

System.getProperty ("sun.arch.data.model");

esso restituisce 32 invece di 64.

e la risorsa JNI esterno che ho compilato per 64 macchine bit non si collegherà al condiviso file .so meno che non sia in esecuzione in un ambiente a 64 bit. (Mi sto dimensioni errori di mismatch di parole quando provo a fare questo)

Così come posso riconfigurare eclissi di correre a 64 bit JVM. Eclipse stessa deve essere una versione a 64 bit?

: su linux

Edit: Ho provato i suggerimenti di tutti e niente sta funzionando. Ho modificato l'esecuzione e le variabili ambientali per indicare il nuovo JDK che ho, che è 1.6_30. quando eseguo il programma da una riga di comando ottengo 64 e amd64 come valore quando eseguo lo stesso programma in eclise ottengo 32 e i386. C'è qualcosa di sbagliato in Eclipse che sta causando il tentativo di eseguirlo su una JVM a 32 bit. quando provo java -d32 -version dice che un ambiente a 32 bit non è installato ma Eclipse non lo sa. Ho modificato il file Eclipse.ini e ancora non funziona nulla. Ho riavviato l'eclissi dopo questi cambiamenti ... niente. Può qualcuno che conosce bene l'eclissi e le persone mi aiutano qui. grazie

+0

Sei sicuro '" sun.arch.data.model' dà l'architettura JVM e non OS architettura io sono un po 'poco chiaro su questo concetto che – RanRag

+0

.. Non sono sicuro di averlo estratto da un altro thread di overflow dello stack.ma ricontrolleremo che ora – Randnum

+0

stai usando la versione a 64 bit di Eclipse? Sono abbastanza sicuro che Eclipse selezionerà la JVM corretta in base alla sua versione, e dal momento che Eclipse fornisce JNI, non è possibile combinare e abbinare installazioni di Eclipse/JVM a 32 e 64 bit. –

risposta

3

Aggiungi il tag -vm a eclipse.ini o la scorciatoia per specificare esplicitamente un JRE. Si noti che l'impostazione predefinita per Windows XP consiste nell'utilizzare il JRE CRAPPY fornito con Windows.

-vm "%JAVA_HOME%/bin/javaw.exe"

+0

provato questo ... – Randnum

+0

Si noti che il formato in eclipse.ini deve avere -vm su una riga e il valore sul prossimo .. Non sono sicuro del perché. –

+0

sì, l'ho fatto correttamente. riconosce effettivamente la nuova posizione che ho inserito, ma per qualche motivo è ancora in modalità a 32 bit anche se JDK/JRE lo riconosce come corretto. È come se ci fosse una bandiera Devo passare da qualche parte – Randnum

0

Per me il suo lavoro correttamente! . Assicurati che il tuo percorso sia c: \ Programmi non c: \ Programmi (X86) (se hai installato JDK a 64 bit dovrebbe essere archiviato in c: \ Programmi)

+0

Sono su Linux adesso. – Randnum

+0

scusa non ho idea di Linux. – invariant

0

configurazione Eclipse è spiegata here

+0

Ho modificato l'ini e non ha funzionato. Continua a mostrare 32 bit su un i386. – Randnum

0

I "JRE installati" (meglio JDK uso) sono utilizzati per la costruzione e l'esecuzione il codice e può essere di diversa architettura o versione Java. La JVM utilizzata per l'esecuzione di Eclipse è definita nel file eclipse.ini. Dovresti usare la versione per l'architettura di JVM.

+0

Questo è strano perché non penso che il mio computer abbia un JDK/JRE a 32 bit installato sul computer, per quanto ne so. Ho specificato gli ambienti di runtime ovunque incluso nel file Eclipse.ini e continua a pensare che sia in esecuzione su un computer a 32 bit. – Randnum

+0

Quale sapore di Linux stai usando? Alcuni installano JRE extra, ad es. per OpenOffice. Come hai installato JRE? Hai cambiato l'ambiente di esecuzione nel progetto? –

+0

Sto usando Red Hat 5, ho installato molti JDK ma ho fatto attenzione a cambiare il classpath in linux a quello più recente 1.6. Ho anche modificato tutto l'ambiente e le variabili di esecuzione nel progetto. In effetti non so se ho un jvm a 32 bit installato ovunque sul mio computer. Per qualche ragione, Eclipse sta diventando un ladro e sta dicendo che si trova su un computer i386 e che è in esecuzione in modalità a 32 bit. tuttavia quando esco da eclissi e runt ha esattamente lo stesso comando mostra i 64 bit corretti e un computer amd64. – Randnum

0

Va bene. Questo è stato piuttosto un mal di testa, ma credo di avere una soluzione. Dopo aver modificato eclipse.ini, vai alle proprietà del progetto. Sotto le impostazioni Esegui/Debug, modifica la configurazione di avvio per il tuo progetto. Sotto il tag JRE, fai clic su JRE installati. Quando viene visualizzata la finestra di dialogo, fai clic su Cerca. Vai alla cartella dei tuoi file di programma, NON quella di x86, e lascia che cerchi i tuoi JRE. Quando arriva l'ultima, deseleziona il JRE attualmente selezionato e seleziona il JRE più recente trovato. Ho ribattezzato il mio JRE7-64 solo per identificare una differenza. Questo ha risolto il problema dalla mia parte. fortuna

1

bene in eclipse.ini aggiuntivo:

-Xmx8g 
-d64 
+1

Chiarimento: il parametro '-Xmx8g' indica a Eclipse che può utilizzare fino a 8 GB di RAM. Questo parametro non è realmente necessario per fare in modo che Eclipse usi una JVM a 64 bit. – Augustin

+0

Chiarimento: '-d64' è – Sergei

Problemi correlati