'Java' non è riconosciuto come comando interno o esterno


159

Durante il tentativo di verificare la versione corrente di Java in cui sono in esecuzione, ho ricevuto l'errore "java non è riconosciuto come comando interno o esterno, programma eseguibile o file batch".

Sto eseguendo il sistema operativo Windows 7 e ho scaricato l'ultimo JDK e ho pensato che avrei potuto accidentalmente eliminare java dalla macchina come prima ero in grado di controllare la versione Java usando il comando "java -version".

Quale software devo scaricare per far funzionare di nuovo Java sul mio computer?

MODIFICARE:

Sono riuscito a far funzionare di nuovo Java dal mio cmd dopo aver assicurato che tutte le variabili di ambiente puntassero all'attuale SDK Java. Grazie per tutte le risposte alla mia domanda.

Karen

Risposte:


200

È necessario configurare le variabili di ambiente JAVA_HOMEe PATH.

JAVA_HOMEdeve contenere il percorso di java e aggiungere % JAVA_HOME% \ bin aPATH

In alternativa, puoi semplicemente aggiungere al tuo PATHintero percorso la cartella bin, senza la JAVA_HOMEvariabile, tuttavia, questo rende un po 'più fastidioso quando devi avere più di una versione java sul tuo computer (in questo modo devi solo cambiare JAVA_HOMEe non preoccuparti nemmeno di PATH)


nel mio caso avevo installato jdk 7 e ha funzionato bene fino a quando non ho aggiornato alla nuova versione di jdk 8, la soluzione era disinstallare la vecchia versione di jdk
moein rahimi

1
Funziona per me dopo aver eliminato JAVA_HOME e impostato l'intero percorso della cartella java bin nella prima della variabile Path
Mohammad Heydari,

Ho già ottenuto una PATHvariabile. Posso cambiare il contenuto senza rovinare nient'altro?
Liggliluff,

ricordati di aggiungere ENTRAMBE le variabili "JAVA_HOME" e poi "PATH", entrambi in maiuscolo
Marco Ottina

Per qualche motivo in Windows 10, questo non funzionerà. Inserisci il percorso completo in PATHvariabile invece di utilizzare %JAVA_HOME%. Check out questa risposta: stackoverflow.com/a/62590863/3337089
Nagabhushan SN

141

Per Windows 7:

  1. Fare clic destro su My Computer
  2. Selezionare Properties
  3. Selezionare Advanced System Settings
  4. Seleziona la Advancedscheda
  5. Selezionare Environment Variables
  6. Seleziona PathsottoSystem Variables
  7. Fare clic sul Editpulsante
  8. Nell'editor Valore variabile incollalo all'inizio della riga

    C:\Program Files\Java\jdk1.7.0_72\bin;
  9. Fai clic su OK, quindi nuovamente su OK

  10. Riavvia il prompt dei comandi altrimenti non vedrà la modifica alla variabile percorso
  11. Digitare il java -versionprompt dei comandi.


Note sul passaggio 8:
1. La versione di Java in questo potrebbe essere diversa da quella utilizzata qui: questo è solo un esempio.
2. Probabilmente ci saranno altri valori nella variabile path. È davvero importante non eliminare ciò che è già lì. Ecco perché le istruzioni dicono di incollare il valore dato all'inizio della riga - questo significa che non rimuovi il valore esistente, devi solo mettere java prima di esso. Questo risolve anche eventuali problemi che potresti riscontrare se sul percorso è presente anche un'altra versione di Java.

Note sul passaggio 6:
1. Imposta il percorso per il computer, non per il singolo utente. È possibile che tu stia lavorando su un computer che usano anche altri sviluppatori, nel qual caso preferiresti impostare le variabili utente, piuttosto che le variabili di sistema


6
Questo "Riavvia il prompt dei comandi altrimenti non vedrà la modifica alla variabile percorso"
Andrew Paes

1
non usare ';' per jdk 10
brainLoop,

53

Sembra che tu non abbia aggiunto la directory giusta al tuo percorso.

Per prima cosa scopri in quale directory hai installato Java. Ad esempio, sulla mia scatola è in C:\Program Files\java\jdk1.7.0_111 . Una volta trovato, prova a eseguirlo direttamente. Per esempio:

c:\> "c:\Program Files\java\jdk1.7.0_11\bin\java" -version

Una volta che hai sicuramente la versione giusta, aggiungi la bindirectory alla tua PATHvariabile di ambiente.

Nota che non hai bisogno di una JAVA_HOMEvariabile d'ambiente e non ce l'hai da tempo. Alcuni strumenti possono usarlo - e se stai usando uno di quelli, sicuramente, impostalo - ma se stai usando (diciamo) Eclipse e la riga di comando java/ javacstrumenti, stai bene senza di esso.


1 Sì, questo mi ha ricordato che devo aggiornare ...


@SotiriosDelimanolis: non ricordo l'ultima volta che ne ho avuto bisogno, personalmente. Alcuni strumenti potrebbero - ma inizierei a cambiare l'ambiente solo quando ne avevo davvero bisogno, piuttosto che per ovvio. (Modificherò la mia risposta per indicarlo.)
Jon Skeet,

1
Grazie mille per la tua risposta, tuttavia dopo aver aggiunto sia il percorso a java sia nelle variabili di ambiente "Path" e "JAVA_HOME", sembra che stia ancora ricevendo lo stesso errore.
Karen,

2
@Karen: Beh, hai provato il mio primo passo per eseguirlo esplicitamente? E hai riavviato il prompt dei comandi dopo aver modificato le variabili di ambiente?
Jon Skeet,

Quando ho eseguito il corsivo c: \> "c: \ Programmi \ java \ jdk1.7.0_11 \ bin \ java" -versione corsivo diceva "Java versione '1.7.0_11' Java <TM> SE Runtime Environment <build 1.7. 0_11-b21> Java HotSpot <TM> VM client <build 23.6-b04, modalità mista, condivisione>
Karen,

Sì, ho riavviato il cmd dopo aver modificato le variabili di ambiente, ma purtroppo non sembra esserci stato alcun cambiamento.
Karen,

48

Supponiamo che Java / JDK sia installato nella cartella: C: \ Programmi \ Java :

Percorso di installazione Java / JDK

Segui i passi:

  1. Vai a Pannello di controllo → Sistema → Impostazioni di sistema avanzate → Avanzate → Variabili d'ambiente ( Win+ Pause/Breakper Sistema nel Pannello di controllo )
  2. Nella sezione Variabili di sistema fai clic su Nuovo ...
  3. In Nome variabile scrivi:JAVA_HOME
  4. In Valore variabile scrivere :,C:\Program Files\Java\bin premere OK : Aggiungi JAVA_HOME
  5. Nel sezione Variabili di sistema fai doppio clic suPath
  6. Premere Nuovo e scrivere C:\Program Files\Java\bin, premere OK : Aggiungi percorso Java
  7. Nelle variabili di ambiente finestra delle premere OK
  8. Riavvia / Esegui cmd.exee scrivi java --version:: Versione Java CMD

Adoro il suggerimento (windows + Pause Break).
CodeFinity,

Ho appena provato con la finestra 10. Il comando java --versionnon funziona ma java -versionfunziona.
Steve,

14

Cerca variabili d'ambiente. inserisci qui la descrizione dell'immagine

apri "modifica le variabili di ambiente di sistema". quindi fare clic su "variabili di ambiente". inserisci qui la descrizione dell'immagine

In "Variabili utente" fai clic su "Percorso", quindi su "Modifica". inserisci qui la descrizione dell'immagine

Trova il tuo percorso Java e fai clic su "Modifica". inserisci qui la descrizione dell'immagine

quindi incollare il percorso della cartella di installazione di Java. Principalmente puoi trovarlo su un percorso simile a questo. C: \ Programmi \ Java \ jdk-12.0.2 \ bin

Quindi fare clic su OK. ora nel menu Start, digitare cmd. aprire il prompt dei comandi. type java -version Se lo hai fatto bene, dovrebbe mostrare qualcosa del genere. inserisci qui la descrizione dell'immagine


9

Per me inizia a funzionare dopo aver inserito: all'inizio del percorso della variabile di sistema: -


inserisci qui la descrizione dell'immagine

inserisci qui la descrizione dell'immagine



6

La mia soluzione era quella di mettere lo stesso valore (percorso della cartella bin JDK) in JAVA_HOMEePath

JAVA_HOME Sentiero


1
Benvenuti in SO. Si prega di aggiungere qualche informazione in più - per esempio quello che effettivamente mette in JAVA_HOMEe PATHe non fanno riferimento ad altre risposte.
Michael Lihs,

5

Questo problema si verifica su Windows 8. Copiare innanzitutto il percorso di java jdk, ad esempio C: \ Programmi \ Java \ jdk1.7.0_51 \ bin.

  1. Direttamente sull'icona Risorse del computer sul desktop e fare clic su Proprietà.

  2. Seleziona "Impostazioni di sistema avanzate" nel riquadro a sinistra.

  3. Nella scheda "Avanzate", seleziona "Variabili d'ambiente" nella parte inferiore.

  4. In Variabili di sistema, selezionare la variabile 'Percorso' e modificarla.

Incolla il percorso e aggiungi un ';' alla fine - ad es. C: \ Programmi \ Java \ jdk1.7.0_51 \ bin;


2
Assicurarsi (;) alla fine del percorso esistente prima di aggiungere.
Sanjeet A

3

Nel mio caso, PATH è stato impostato correttamente ma PATHEXT è stato cancellato da me per errore con l'estensione .exe. Ecco perché window non riesce a trovare java o qualsiasi altra applicazione .exe dal prompt dei comandi. Spero che possa aiutare qualcuno.


1

Ho avuto lo stesso problema. Basta installare il bit esatto di java dal tuo computer. Se il tuo PC è a 64 bit, installa java a 64 bit. Se è a 32 bit, viceversa :)


1

Non so perché, ma nel mio caso, il motivo era perché stavo eseguendo il terminale Anaconda invece del CMD.

Dopo aver usato CMD e aver aggiornato le impostazioni del percorso come indicato da tutti i commenti sopra il problema risolto dalla mia parte.


0

se hai installato cygwin nella finestra di Windows o se stai utilizzando UNIX Shell

Issue bash#which java

Questo ti dirà se java è nel tuo percorso di classe o NOT.


0

Ho corretto la mia variabile di percorso ma il prompt dei comandi deve essere riavviato altrimenti, non sarà in grado di verificare la modifica della variabile di percorso. Può essere utile per qualcuno come me. quindi " riavvia prompt dei comandi "


0

Se le variabili di ambiente ( JAVA_HOMEe PATH) sono state impostate in variabili utente, il prompt dei comandi (eseguito come amministratore) non identificherà java. Per questo è necessario impostare le variabili di ambiente in variabili di sistema.

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.