'Java' no se reconoce como un comando interno o externo

158

Al intentar verificar la versión actual de Java en la que estoy ejecutando, recibí el error "Java no se reconoce como un comando interno o externo, un programa operativo o un archivo por lotes".

Estoy ejecutando el sistema operativo Windows 7 y descargué el último JDK y sentí que podría haber eliminado accidentalmente el Java de la máquina, ya que antes podía verificar la versión de Java usando el comando "Java -version".

¿Qué software debo descargar para que Java vuelva a funcionar en mi máquina?

EDITAR:

He logrado que Java se ejecute desde mi cmd nuevamente después de asegurarme de que todas las variables de entorno apuntaran al SDK de Java actual. Gracias por todas las respuestas a mi pregunta.

Karen

Karen
fuente

Respuestas:

200

Necesita configurar sus variables de entorno, JAVA_HOMEy PATH.

JAVA_HOMEdebe contener la ruta a java, y debe agregar % JAVA_HOME% \ bin aPATH

Alternativamente, simplemente puede agregar a su PATHruta completa a la carpeta bin, sin la JAVA_HOMEvariable, sin embargo, esto hace un poco más molesto cuando necesita tener más de una versión de Java en su máquina (de esa manera solo necesita cambiar JAVA_HOMEy ni siquiera te molestes PATH)

fcm
fuente
en mi caso tenía instalado jdk 7 y funcionó bien hasta que actualicé a la nueva versión de jdk 8, la solución fue desinstalar la versión anterior de jdk
moein rahimi
1
Funciona para mí después de eliminar JAVA_HOME y establecer toda la ruta a la carpeta java bin en la primera de la variable Ruta
Mohammad Heydari
Ya tengo una PATHvariable. ¿Puedo cambiar el contenido sin arruinar nada más?
Liggliluff
recuerde agregar AMBAS variables "JAVA_HOME" y luego "PATH", ambas en mayúscula
Marco Ottina
Por alguna razón en Windows 10, esto no funcionará. Ponga la ruta completa en PATHvariable en lugar de usar %JAVA_HOME%. Mira esta respuesta: stackoverflow.com/a/62590863/3337089
Nagabhushan SN
140

Para Windows 7:

  1. Haga clic derecho en My Computer
  2. Seleccione Properties
  3. Seleccione Advanced System Settings
  4. Seleccione Advanced pestaña
  5. Seleccione Environment Variables
  6. Seleccionar PathbajoSystem Variables
  7. Haga clic en el Editbotón
  8. En el editor de valores variables, pegue esto al comienzo de la línea

    C:\Program Files\Java\jdk1.7.0_72\bin;
  9. Haga clic en Aceptar y luego en Aceptar nuevamente

  10. Reinicie el símbolo del sistema; de lo contrario, no verá el cambio en la variable de ruta
  11. Escriba el java -versionsímbolo del sistema.


Notas sobre el Paso 8:
1. La versión de java en esto puede ser diferente de la que se usa aquí; esto es solo un ejemplo.
2. Probablemente habrá otros valores en la variable de ruta. Es realmente importante que no elimine lo que ya está allí. Es por eso que las instrucciones dicen que pegue el valor dado al comienzo de la línea ; esto significa que no elimina el valor existente, solo coloca Java antes. Esto también soluciona cualquier problema que pueda tener si otra versión de Java también está en camino.

Notas sobre el Paso 6:
1. Esto establece la ruta para la computadora, no para el usuario individual. Puede ser que esté trabajando en una computadora que otros desarrolladores también usan, en cuyo caso prefiere configurar las variables de usuario, en lugar de las variables del sistema

Veeresh Hatti
fuente
66
Este "símbolo del sistema de reinicio de lo contrario no verá el cambio en la variable de ruta"
Andrew Paes
1
no uses ';' para jdk 10
brainLoop
53

Parece que no ha agregado el directorio correcto a su ruta.

Primero averigüe en qué directorio ha instalado Java. Por ejemplo, en mi caja está en C:\Program Files\java\jdk1.7.0_111 . Una vez que lo haya encontrado, intente ejecutarlo directamente. Por ejemplo:

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

Una vez que tenga la versión correcta, agregue el bindirectorio a su PATHvariable de entorno.

Tenga en cuenta que no necesita una JAVA_HOMEvariable de entorno y no la ha necesitado durante algún tiempo. Algunas herramientas pueden usarlo, y si está usando uno de esos, entonces seguro, configúrelo, pero si solo está usando (digamos) Eclipse y la línea de comandos java/ javacherramientas, está bien sin él.


1 Sí, esto me ha recordado que necesito actualizar ...

Jon Skeet
fuente
@SotiriosDelimanolis: No recuerdo la última vez que lo necesité, personalmente. Algunas herramientas pueden, pero solo comenzaría a cambiar el entorno cuando realmente lo necesitara, en lugar de hacerlo de forma natural. (Editaré mi respuesta para indicar eso.)
Jon Skeet
1
Muchas gracias por su respuesta, sin embargo, después de agregar la ruta a Java en las variables de entorno "Ruta" y "JAVA_HOME", todavía parece que recibo el mismo error.
Karen
2
@Karen: Bueno, ¿intentaste mi primer paso para ejecutarlo explícitamente? ¿Y ha reiniciado el símbolo del sistema después de cambiar las variables de entorno?
Jon Skeet
Cuando ejecuté cursiva c: \> "c: \ Archivos de programa \ java \ jdk1.7.0_11 \ bin \ java" -versión en cursiva decía "java version '1.7.0_11' Java <TM> SE Runtime Environment <build 1.7. 0_11-b21> Java HotSpot <TM> Client VM <compilación 23.6-b04, modo mixto, uso compartido>
Karen
Sí, he reiniciado el cmd después de cambiar las variables de entorno, pero desafortunadamente parece que no ha habido cambios.
Karen
48

Supongamos que Java / JDK está instalado en la carpeta: C: \ Archivos de programa \ Java :

Ruta de instalación de Java / JDK

Sigue los pasos:

  1. Ir a Panel de control → Sistema → Configuración avanzada del sistema → Avanzado → Variables de entorno ( Win+ Pause/Breakpara Sistema en el Panel de control )
  2. En la sección Variables del sistema , haga clic en Nuevo ...
  3. En Nombre de variable escriba:JAVA_HOME
  4. En Escritura de valor variable : C:\Program Files\Java\binpresione OK : Añadir JAVA_HOME
  5. En la sección Variables del sistema , haga doble clic enPath
  6. Presione Nuevo y escriba C:\Program Files\Java\bin, presione OK : Agregar ruta de Java
  7. En la ventana de variables de entorno , presione OK
  8. Reiniciar / Ejecutar cmd.exey escribir java --version: Java versión CMD
Vijay Bhatt
fuente
Me encanta la sugerencia (windows + Pause Break).
CodeFinity
Acabo de probar con la ventana 10. El comando java --versionno funciona pero java -versionfunciona.
Steve
14

Buscar variables de entorno. ingrese la descripción de la imagen aquí

abra la "edición de las variables de entorno del sistema". luego haga clic en "variables de entorno". ingrese la descripción de la imagen aquí

En "Variables de usuario", haga clic en "Ruta" y luego en "Editar". ingrese la descripción de la imagen aquí

Encuentre su ruta de Java y haga clic en "Editar". ingrese la descripción de la imagen aquí

luego pegue la ruta de su carpeta de instalación de Java. En su mayoría, puedes encontrarlo en un camino similar a este. C: \ Archivos de programa \ Java \ jdk-12.0.2 \ bin

Luego haga clic en Aceptar. ahora en el menú de inicio, escriba cmd. Abra el símbolo del sistema. escriba java -version Si lo hizo bien, debería mostrar algo como esto. ingrese la descripción de la imagen aquí

JA
fuente
9

Para mí, comienza a funcionar después de poner: en el inicio de la ruta variable del sistema: -


ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí


Anurag_BEHS
fuente
6

Mi solución fue poner el mismo valor (ruta a la carpeta bin JDK) en JAVA_HOMEyPath

JAVA_HOME Camino

naru
fuente
1
Bienvenido a SO. Por favor, añadir un poco más de información - por ejemplo, lo que en realidad pone en JAVA_HOMEy PATHy no se refieren a otras respuestas.
Michael Lihs
5

Este problema está en Windows 8. Primero copie su Ruta de acceso de java jdk, por ejemplo, C: \ Archivos de programa \ Java \ jdk1.7.0_51 \ bin.

  1. Justo en el icono de Mi PC en el escritorio y haga clic en Propiedades.

  2. Seleccione 'Configuración avanzada del sistema' en el panel izquierdo.

  3. En la pestaña 'Avanzado', seleccione 'Variables de entorno' en la parte inferior.

  4. En Variables del sistema, seleccione la variable 'Ruta' y edítela.

Pegue la ruta y agregue un ';' al final, por ejemplo, C: \ Archivos de programa \ Java \ jdk1.7.0_51 \ bin;

besartm
fuente
2
Asegúrese de (;) al final de la ruta existente antes de agregar.
Sanjeet A
3

En mi caso, PATH se configuró correctamente, pero PATHEXT me lo borró por error con la extensión .exe. Es por eso que window no puede encontrar java o cualquier aplicación .exe desde el símbolo del sistema. Espero que pueda ayudar a alguien.

Bretón F.
fuente
1

Yo tuve el mismo problema. Simplemente instale el bit exacto de Java a partir de su computadora. Si su PC es de 64 bits, instale Java de 64 bits. Si es de 32 bits, viceversa :)

Pratik
fuente
1

No estoy seguro de por qué, pero en mi caso, la razón fue porque estaba ejecutando el terminal Anaconda en lugar del CMD.

Después de usar CMD y actualizar la configuración de ruta como se menciona en todos los comentarios anteriores, el problema se resolvió de mi lado.

HassanSh__3571619
fuente
0

si tiene cygwin instalado en Windows Box, o usa UNIX Shell, entonces

Issue bash#which java

Esto le dirá si Java está en su classpath o NO.

anish
fuente
0

Corregí mi variable de ruta, pero el símbolo del sistema debe reiniciarse ; de lo contrario, no podrá verificar el cambio en la variable de ruta. Puede ser útil para alguien como yo. entonces " reiniciar el símbolo del sistema "

Ganesh
fuente
0

Si ha establecido las variables de entorno ( JAVA_HOMEy PATH) en las variables de usuario, el símbolo del sistema (ejecutar como administrador) no identificará Java. Para eso necesita establecer variables de entorno en variables del sistema.

Prabhash Rathnayake
fuente