Segnalazione di java errata


17

Sto eseguendo Windows 7 Professional x64 e ho installato le seguenti versioni di Java:

x64

  • C: \ Programmi \ Java
    • jdk1.6.0_24
    • jdk1.7.0_04
    • jdk1.7.0_07
    • jre6
    • jre7

X 86

  • C: \ Programmi (x86) \ Java
    • jre1.6.0_07
    • jre6
    • jre7

nelle mie variabili di ambiente ho il mio PATHcontenimento C:\Program Files\Java\jdk1.6.0_24\bine JAVA_HOMEimpostato suC:\Program Files\Java\jdk1.6.0_24\bin

Tuttavia, eseguendo java -versionreport

java version "1.7.0_07"
Java(TM) SE Runtime Environment (build 1.7.0_07-b10)
Java HotSpot(TM) 64-Bit Server VM (build 23.3-b01, mixed mode)

Come è il caso in cui non vi è alcun riferimento a questa versione di Java nelle variabili del mio ambiente.

Qualsiasi aiuto su questo problema sarebbe fantastico mentre sto cercando di eseguire Apache ANT usando Java 1.6.

Risposte:


27

Probabilmente hai java.exe copiato su uno dei percorsi di sistema (AFAIK è il comportamento predefinito dell'installer Java). Per controllare cosa viene effettivamente eseguito quando si esegue 'java -version', eseguire dalla riga di comando:
for %I in (java.exe) do @echo %~$PATH:Ie ti dirà dove si trova.


1
Wow - è così utile! Per qualche motivo java.exeè in system32. Lo sposterò lungo il percorso come detto.
Malachi,

1
Lo stesso problema qui, java.exeera in system32ANDProgramData\Oracle\javapath
Kevin Labécot l'

Se ti stai chiedendo cosa fare dopo, puoi rinominare la exes. Ho rinominato java.exe, javaw.exee javaws.exeper java-foobar.exe, javaw-foobar.exee javaws-foobar.exe, rispettivamente.
javatarz,

Ciò aumenta il numero di posti che devo controllare a 4: PATH, JAVA_HOME, pannelli di controllo e ora anche System32 ... Solo wow. Un giorno il registro diventerà 5 °. E grazie a voi signore.
Jaroslav Záruba

2

Le cartelle PATH vengono controllate nell'ordine in cui appaiono. Prova a spostare il percorso java in primo piano. Se ciò risolve il problema, hai un'altra versione da qualche parte sul tuo percorso.


2

Quando si installa un JRE pubblico (utilizzato dal plug-in Java), viene creato anche un file java.exe in C: \ WINNT \ system32 (IIRC). Probabilmente è questo comando java che viene eseguito, poiché C: \ WINNT \ system32 viene prima della directory JDK / bin nel tuo PERCORSO.

Inserire la directory JDK / bin all'inizio del PERCORSO


0

Questo riporterà la versione java corretta e ti indicherà anche qual è il problema:

@ECHO off
ECHO ---------------
SET "JAVA_HOME=C:\Path to wherever\JDKwhatever"
SET "PATH=%JAVA_HOME%\bin;%PATH%"
java -version
ECHO ---------------
pause

0

Suggerisco di disinstallare tutti i JDK e i JRE. Quindi, installa l'ultimo JDK e aggiorni il tuo percorso di classe, JAVA_HOME e il percorso. Questo ha funzionato per me.


-1

Come ho scoperto di recente, assicurati di aver definito JAVA_HOMEla sezione "Variabili di sistema" e non la sezione "Variabili utente".

%JAVA_HOME%\binAll'inizio avevo PATHma non funzionava - l'aggiunta JAVA_HOMEal sistema ha corretto il problema.

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.