2014-10-22 1 views
6

Recentemente ho aggiornato il JRE attraverso il processo di aggiornamento che chrome (versione 38.0.2125.104 m) offre ("il tuo java è obsoleto e ha bisogno di un aggiornamento" o simile). Il risultato è stato che la mia eclipse luna (64 bit) non è stata più eseguita. Guardando più vicino allo sfondo ho rilevato: il chrome java updater (notabene avviato da un sito Oracle) ha aggiunto C: \ ProgramData \ Oracle \ Java \ javapath davanti al PAT var di env var. Questa cartella contiene tre collegamenti simbolici alla più recente installazione di java 8 JRE nella cartella di programma (x86) -> quindi a un java java a 32 bit.Perché Chrome Java updater installa un JRE globale a 32 bit su una macchina a 64 bit?

Ovviamente Oracle ha sostituito (con Java8) la vecchia tecnica - con i java launcher in system32 (per applicazioni a 64 bit) resp. SysWOW64 (per applicazioni a 32 bit) - con questo nuovo approccio. Ma: In questi luoghi ci sono ancora i "vecchi" java.exe/javaw.exe/javaws.exe, in particolare anche le versioni effettive (stessa data del file dei nuovi symlink).

Le mie domande sono: a) qual è il motivo dell'installazione di un JRE globale a 32 bit su una macchina a 64 bit? b) Esiste un approccio migliore per risolvere il problema rispetto alla semplice eliminazione della nuova voce di percorso?

+0

non ho alcun indizio perché cromo darebbe la versione a 32 bit, ma shouldn' t davvero importante un sacco considerando che 32 bit dovrebbero funzionare su un'architettura a 64 bit. Per quanto riguarda il problema dell'eclisse, dai un'occhiata a questa domanda http://stackoverflow.com/questions/16394822/setting-up-eclipse-with-jre-path –

+0

Se stai utilizzando una versione a 32 bit di Chrome, allora una versione a 32 bit di Java verrà scaricato. Fai clic su Chrome per vedere se contiene un (64 bit). – Frunk

+0

@Frunk: hai ragione. Fino ad ora è stata concessa la coesistenza senza problemi tra il Chrome a 32 bit e l'eclissi a 64 bit. Ma quando Oracle pone ora un JRE a 32 bit di fronte al PERCORSO, questa pace è rotta. C'è un'altra buona ragione per cui Oracle fa così? – Heri

risposta

-2

sviluppatori di Chrome sono pigri e non vogliono perdere tempo scoprire come utilizzare le istruzioni complete a 64 bit, i registri ecc

+0

Per renderlo più positivo: il loro datore di lavoro avrebbe bisogno che pagassero di più se impiegassero più tempo a fornire un supporto completo a 64 bit –

+1

Se potessi, darei -1 per questo "Non". Risposta. Purtroppo devo meno reputazioni – Heri

+0

Ho la versione 38.0.2125.122 Forse il tuo problema è risolto lì. Aggiungere o eliminare le directory nel tuo $ PATH è sempre una buona idea (se non la migliore) per risolvere problemi relativi all'aggiornamento (o al downgrade, se necessario). A proposito la tua reazione è sul mio commento, non la mia risposta piuttosto negativa. In generale, il supporto del software di sistema a 32 e/o 64 bit è più complicato per gli sviluppatori di applicazioni di quanto si possa pensare. Ricordo il tempo in cui c'erano molti processori a 8 bit e alcuni a 16 bit nei microcomputer. Ricorda la legge di Moore: http://en.wikipedia.org/wiki/La legge del produttore –