javac no funciona en el símbolo del sistema de Windows

javac usar javac con el símbolo del sistema de Windows, pero no está funcionando.

Después de agregar el directorio "C:\Program Files\Java\jdk1.6.0_16\bin\" al final de la PATH entorno PATH , el comando java funciona bien, pero el uso de javac me da el siguiente error:

‘javac’ no se reconoce como un comando interno o externo, progtwig operable o archivo por lotes.

Si lo agregó en el panel de control mientras el símbolo del sistema estaba abierto, eso no afectará su solicitud de comando actual. Tendrá que salir y volver a abrir o simplemente hacer:

 set "path=%path%;c:\program files\java\jdk1.6.0_16\bin" 

Para verificar, ejecuta:

 echo %path% 

desde el símbolo del sistema y háganos saber de qué se trata.

De lo contrario, asegúrese de que haya un javac en ese directorio intentando:

 "c:\program files\java\jdk1.6.0_16\bin\javac.exe" 

desde el símbolo del sistema. También puede indicar qué ejecutable (si lo hay) se está utilizando con el comando:

 for %i in (javac.exe) do @echo %~$PATH:i 

Este es un truco ingenioso similar a los comandos which y whence en algunos sistemas operativos tipo UNIX.

El sistema operativo Windows busca el directorio actual y los directorios listados en la variable de entorno PATH para progtwigs ejecutables. Los progtwigs de JDK (como Java compiler javac.exe y Java runtime java.exe) residen en el directorio “\ bin” (donde denota el directorio JDK instalado, por ejemplo, C: \ Program Files \ Java \ jdk1.8.0_xx). Debe incluir el directorio “\ bin” en la RUTA.

Para editar la variable de entorno PATH en Windows XP / Vista / 7/8:

  1. Panel de control ⇒ Sistema ⇒ Configuración avanzada del sistema

  2. Cambia a la pestaña “Avanzado” ⇒ Variables de entorno

  3. En “Variables del sistema”, desplácese hacia abajo para seleccionar “RUTA” ⇒ Editar

((ahora lea las siguientes 3 veces antes de continuar, NO HAY UNDO ))

En el campo “Valor de variable”, INSERTE “c: \ Archivos de progtwig \ Java \ jdk1.8.0_xx \ bin” (Reemplace xx con el número de actualización y VERIFIQUE que este es el directorio binario de su JDK !!!) FRENTE a todos los existentes directorios, seguidos por un punto y coma (;) que separa el directorio binario del JDK del rest de los directorios existentes. NO ELIMINE ninguna entrada existente; de lo contrario, algunas aplicaciones existentes pueden no ejecutarse.

 Variable name : PATH Variable value : c:\Program Files\Java\jdk1.8.0_xx\bin;[existing entries...] 

Captura de pantalla

Después de un largo Google, llegué a saber que javac.exe debe estar dentro de JDK (C: \ Archivos de progtwig \ Java \ jdk (número de versión) \ bin) no dentro de JRE (C: \ Archivos de progtwig (x86) \ Java \ jre7 \ bin) “JRE no viene con un comstackdor. (JRE) es simplemente un entorno de tiempo de ejecución Java. Lo que necesitas es el kit de desarrollo de Java”. para usar el comstackdor javac

javac no funcionará si está apuntando bin dentro de jre

Para usar javac en cmd, JDK debe estar instalado en su sistema …

Para la ruta javac

ruta = C: \ Archivos de progtwig (x86) \ Java \ jre7 \ bin esto está mal

ruta = C: \ Archivos de progtwig \ Java \ jdk (número de versión) \ bin esto es correcto

Asegúrese de que “javac.exe” esté dentro de su “C: \ Archivos de progtwig \ Java \ jdk (número de versión) \ bin”

No te confundas con JRE y JDK, ambos son totalmente diferentes

si no tiene descargas de JDK, pls desde este enlace http://www.oracle.com/technetwork/java/javase/downloads/index.html

hilo de referencia para JDK VS JRE ¿Cuál es la diferencia entre JDK y JRE?

Sé que este puede no ser tu error específico, pero una vez tuve un espacio líder en mi camino y java funcionaría, pero javac no lo haría.

Por lo que vale, ofrezco el sabio consejo: “Examina tu Camino de cerca”.

Pruebe las soluciones aquí: http://techdem.centerkey.com/2009/05/javahome-command-script.html

Estos son mucho más robustos para cambiar, como cuando actualiza el JDK o el JRE, ya que no hay una ruta codificada.

La solución rápida (si no quieres leer el blog) es

 C:\>for /d %i in ("\Program Files\Java\jdk*") do set JAVA_HOME=%i C:\>set PATH=%PATH%;%JAVA_HOME% 

A continuación, puede agregar estas líneas a un script de inicio / inicio de sesión.

Solo tenía que hacer esto para que esto funcione en Windows 7 64.

Abra un símbolo del sistema (cmd.exe) y escriba:

 set CLASSPATH=C:\Program Files\Java\jdk1.7.0_01\bin 

Asegúrese de volver a abrir todos los comandos de sistema en ejecución de Windows para actualizar también la variable de entorno.

Está bien, este no puede ser el caso siempre, pero muchos de nosotros hemos cometido este error en el pasado y pocos de ellos todavía no lo saben, lo que significa que cada vez que agregas una ruta (cualquier ruta) de cualquier variable de entorno, Es probable que golpee la barra espaciadora justo después del “punto y coma” (como lo haría normalmente, después del “período” mientras escribe en un editor).

Esto creará un espacio líder en la ruta, por ejemplo, “C: \ Archivos de progtwig \ Java \ jdk1.6.0 \ bin” y, por lo tanto, el sistema no encontrará “javac.exe”.

Cambie la carpeta “jdk1.7.0_45” “jdk1_7_0_60” y actualice la ruta en el entorno de Windows. De lo contrario, la ruta ignora el punto en la parte frontal que representa el archivo oculto y por lo tanto, la carpeta no se muestra en las cadenas de PATH.

Me enfrenté exactamente al mismo problema que Java funcionaría, pero javac no aparecería en un mensaje de cmd en Windows 8.

El problema ocurrió porque olvidé eliminar '>' al final del nombre de ruta, es decir, fue así:

 C:\Program Files\Java\jdk*\bin> 

donde se supone que debe ser así:

 C:\Program Files\Java\jdk*\bin 

La ruta solo se establecerá para la cuenta de administrador. Por lo tanto, es importante iniciar el símbolo del sistema como administrador, si aún no lo está.

Asegúrese de no permitir espacios (espacios en blanco) entre las rutas en la variable Path. Mi problema era que tenía espacio en blanco y creo que Windows lo trató como NULL y no leyó mi ruta para Java.

Estaba teniendo el mismo problema publicado en este título. Java funcionaría, pero javac no aparecería en el símbolo del sistema de Windows ( cmd.exe ).

Para mí, era simplemente que había colocado un espacio al agregar C:\Program Files\Java\jdk1.8.0\bin al final de mi %PATH% entorno %PATH% .
Eliminar el espacio entre el ; y la próxima ruta de archivo.

Aprecio que esta es una vieja pregunta ahora, pero mi solución no era una respuesta aquí, así que publícala en caso de que alguien más intente todo lo demás.

En mi caso, una instalación previa de Java JRE (en ProgramData / Oracle / Java) tenía una variable de ruta en la parte superior de mi lista de variables de ruta. El contenido de esa ruta “Oracle” tenía un java.exe pero no un javac.exe. Agregué mi ruta JDK completa a la parte superior de la lista de variables de ruta, por delante de la de “Oracle”, y luego recogió javac.exe y Java.

 for /d %i in ("\Program Files\Java\jdk*") do set JAVA_HOME=%i set JAVA_HOME 

esta solución funcionó para mí

“; C: \ Archivos de progtwig \ Java \ jdk1.6.0 \ bin” en algún momento puede olvidarse de poner punto y coma en la última ruta existente.

Cuando traté de convertir el .java en .class, el comando Javac no funcionó. Lo conseguí trabajando yendo a C: \ Archivos de progtwig (x86) \ Java \ jdk1.7.0_04 \ bin y cuando estaba en ese directorio escribí Javac.exe C \ Test \ test.java e hice la clase con ese táctica. Pruébalo.

Entrégalo como “C: \ Archivos de progtwig \ Java \ jdk1.6.0_16 \ bin”. Eliminar la barra invertida funcionará