Estoy intentando compilar y ejecutar código Java en Sublime Text 2. No me diga que lo haga manualmente en el símbolo del sistema. Alguien me puede decir como?
Por cierto, estoy en Windows 7 ...
Estoy intentando compilar y ejecutar código Java en Sublime Text 2. No me diga que lo haga manualmente en el símbolo del sistema. Alguien me puede decir como?
Por cierto, estoy en Windows 7 ...
CLASSPATH
y / o pasar el cp
interruptor para el proyecto no funcionará. Debería modificar el sistema de compilación cada vez que quiera trabajar en un proyecto diferente o encontrar alguna otra solución (solo un sociópata masoquista modificaría la CLASSPATH
variable en el nivel del sistema operativo cada vez).
Respuestas:
Entonces esto es lo que agregué al archivo JavaC.sublime-build
{
"cmd": ["javac", "-Xlint", "$file"],
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.java",
"variants": [
{ "cmd": ["javac", "-Xlint", "$file"],
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.java",
"name": "Java Lintter"
},
{ "cmd": ["java", "$file_base_name"],
"name": "Run Java"
}
]
}
Lo que hace es que crea variantes del comando de compilación normal ( ctrl+b). Con ctrl+ baún podrá compilar su código. Si lo hace shift+ ctrl+ bse ejecutará la primera variante, que en este caso es javac con la opción -Xlint. La segunda y última variante es el propio comando java. puede colocar esto como su primera variante y shift+ ctrl+ brealmente ejecutará el código java.
Además, observe que cada variante tiene un "nombre". Básicamente, esto permite que esta opción específica de "compilación" aparezca en la opción shift+ ctrl+ p. Entonces, usando esta configuración, simplemente puede hacer shift+ ctrl+ py escribir "Ejecutar Java" y presionar enter, y su código se ejecutará.
Espero que esto haya ayudado.
Run Java
a Run
y ahora presionando ctrl+shift+b
programa en ejecución.
*.sublime-build
archivo?
Encuentro que el método en la publicación Compilar y ejecutar programas Java con Sublime Text 2 funciona bien y es un poco más conveniente que los otros métodos. aquí hay un enlace a la página archivada.
Crea runJava.bat
con el siguiente código.
@ECHO OFF
cd %~dp1
ECHO Compiling %~nx1.......
IF EXIST %~n1.class (
DEL %~n1.class
)
javac %~nx1
IF EXIST %~n1.class (
ECHO -----------OUTPUT-----------
java %~n1
)
Copie este archivo en el directorio bin jdk.
"cmd": ["javac", "$file"],
"cmd": ["runJava.bat", "$file"],
¡Hecho!
Escriba programas y ejecútelos usando CTRL + B
Nota : Las instrucciones son diferentes para Sublime 3.
Sublime Text 3 tiene una solución ligeramente diferente. Esta es una modificación de la respuesta de vijay, que estaba usando antes.
{
"shell_cmd": "javac -Xlint \"${file}\"",
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"working_dir": "${file_path}",
"selector": "source.java",
"variants":
[
{
"name": "Run",
"shell_cmd": "java \"${file_base_name}\""
}
]
}
Pegue lo anterior en un nuevo archivo llamado JavaC.sublime-build
y colóquelo en sus paquetes de usuario. Esto se puede encontrar en C:\Users\You\AppData\Roaming\Sublime Text 3\Packages\User
.
Ctrl-B se compilará. Ctrl-Shift-B se ejecutará.
Esta versión de JavaC.sublime-build, que se edita a partir de la respuesta de vijay, me funciona tanto en Windows 7 como en Mac para Sublime Text 3.
Lo edité para que Ctrl + bo command + b sea suficiente para ambos build + run.
{
"shell_cmd": "javac -Xlint $file && java $file_base_name",
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.java",
"shell": true
}
'&&' asegura que la segunda parte se ejecute solo cuando la primera parte tenga éxito, es decir, solo cuando se genere el archivo de clase. Puede encontrar más información relacionada aquí: http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/ntcmds_shelloverview.mspx?mfr=true
shell_cmd
con cmd
. Esta es la única solución que funcionó para mí. Gracias.
paso- 1: establezca las variables de entorno para java como ya sabe o consulte en algún lugar
strp-2: abra un nuevo documento y copie y pegue el código a continuación
{
"cmd": ["javac", "$file_name", "&&", "java", "$file_base_name"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.java",
"shell":true }
paso 3: guarde el documento como userjavaC.sublime-build en el directorio C: \ Users \ myLapi \ AppData \ Roaming \ Sublime Text 3 \ Packages \ User
paso 4:
después de hecho, seleccione como herramientas-> construir sistemas-> usuariojavaC
para compilar y ejecutar presione ctrl + b
Estoy usando Windows 7. ¡La siguiente solución me funciona!
**Open** the file JavaC.sublime-build and replace all the code in the file with the code below:
{
"cmd": ["javac", "$file_name","&&","java", "$file_base_name"],
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
**"path": "C:\\Program Files\\Java\\jdk1.6.0\\bin\\",**
"selector": "source.java",
"shell": true
}
Recuerde reemplazar "C: \ Archivos de programa \ Java \ jdk1.6.0 \ bin \" con la ruta donde puso su jdk. Y asegúrese de agregar la ruta de su java JDK a la variable de entorno "PATH". Consulte la publicación de bunnyDrug para configurar la variable de entorno. ¡¡Mejor!!
Consulte la solución en: http://www.compilr.org/compile-and-run-java-programs/
Espero que se solucione, tanto para compilar como para ejecutar las clases dentro de sublime ..... Puedes ver mi script en la sección de comentarios para probarlo en caso de mac ...
EDITAR: Desafortunadamente, el enlace anterior está roto ahora. Detallaba todos los pasos necesarios para compilar y ejecutar java dentro de un texto sublime. De todos modos, para sistemas mac o linux, lo siguiente debería funcionar:
modificar el archivo javac.sublime-build para:
#!/bin/sh
classesDir="/Users/$USER/Desktop/java/classes/"
codeDir="/Users/$USER/Desktop/java/code/"
[ -f "$classesDir/$1.class" ] && rm $classesDir/$1.class
for file in $1.java
do
echo "Compiling $file........"
javac -d $classesDir $codeDir/$file
done
if [ -f "$classesDir/$1.class" ]
then
echo "-----------OUTPUT-----------"
java -cp $classesDir $1
else
echo " "
fi
Aquí, he creado una carpeta llamada "java" en el Escritorio y subcarpetas "clases" y "código" para mantener los archivos .class y .java respectivamente, que puede modificar a su manera.
Como se detalla aquí:
http://sublimetext.userecho.com/topic/90531-default-java-build-system-update/
Pasos que tomé para remediar esto
Haga clic en Inicio
Haga clic derecho en 'Computadora'
2.5 Haga clic en Propiedades.
En el lado izquierdo, seleccione 'Configuración avanzada del sistema'
Cerca de la parte inferior, haga clic en 'Variables de entorno'
Desplácese hacia abajo en 'Variables del sistema' hasta que encuentre 'RUTA'; haga clic en editar con esta opción seleccionada.
Agregue la ruta a su carpeta bin de Java. El mío termina luciendo así:
CÓDIGO: SELECCIONAR TODO
; C: \ Archivos de programa \ Java \ jdk1.7.0_03 \ bin \
Para Sublime Text 3
en "C: \ Program Files \ Sublime Text 3 \ Packages", obtienes java.sublime-package, cópialo en otra carpeta, cambia su extensión de .sublime-package a zip y extráelo, obtienes JavaC.sublime-build archivo para sus Modificaciones como arriba.
después de todas las modificaciones extraídas, la carpeta java vuelve a convertir a .zip y cambia su extensión .zip a .sublime-package. después de eso, copie y pegue este archivo en C: \ Archivos de programa \ Sublime Text 3 \ Packages.
¡Esto te ayudara!
(incluso si obtiene mi archivo de http://upfile.mobi/363820 o http://www.4shared.com/file/73SkzY-Kba/Java.html enlace que utilizo para ejecutar el código java utilizo el truco de "Wesley Baugh "por lo que debe copiar el archivo runJava.bat a su directorio C: \ Archivos de programa (x86) \ Java \ jdk1.8.0 \ bin como él dice. y copiar el archivo vinculado anterior a C: \ Archivos de programa \ Sublime Text 3 \ Packages )
Puede compilar y ejecutar su código completamente en ST, y es muy rápido / simple. Hay un paquete ST reciente llamado Javatar que puede hacer esto. https://javatar.readthedocs.org
Este es un código para compilar y ejecutar java en texto sublime 3
"shell_cmd": "javac -d. $ file && java $ {file_base_name}. $ {file_base_name}", "shell": verdadero
Seguí una publicación en este hilo y lo hice funcionar perfectamente:
Haga el archivo bat con lo siguiente y guárdelo en cualquier lugar de su RUTA. Sugiero C: \ Archivos de programa \ Java \ jdk * \ bin \ para mantener todo junto.
@ECHO OFF
cd %~dp1
javac %~nx1
java %~n1
luego edite C: \ Users \ your_user_name \ AppData \ Roaming \ Sublime Text 2 \ Packages \ Java \ JavaC.sublime-build, el contenido será
{
"cmd": ["javac", "$file"],
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.java"
}
reemplace "javac" con el nombre de su archivo bat (por ejemplo, javacexec.bat) y guárdelo.
Siguiendo los pasos a continuación, tendrá 2 sistemas de compilación en sublime: "JavaC" y "JavaC_Input".
"JavaC" le permitiría ejecutar código que no requiere la entrada del usuario y mostrar los resultados en el simulador de terminal de sublime, que es conveniente y atractivo. "JavaC_Input" le permite ejecutar código que requiere la entrada del usuario en una ventana de terminal separada, puede aceptar la entrada del usuario. También puede ejecutar código que no requiera entrada en este sistema de compilación, por lo que si no le importa la ventana emergente, puede seguir con este sistema de compilación y no cambiar. Puede cambiar entre sistemas de compilación desde Herramientas -> Sistema de compilación. Y compila y ejecuta código usando ctrl + b.
Estos son los pasos para lograrlo:
(nota: asegúrese de que ya tiene la configuración básica del sistema java: instale JDK y configure CLASSPATH y PATH correctos, no daré más detalles sobre esto)
Configuración del sistema de compilación "JavaC"
1, cree un archivo bat con el siguiente código y guárdelo en C: \ Archivos de programa \ Java \ jdk * \ bin \ para mantener todo junto. Nombra el archivo "javacexec.bat".
@ECHO OFF
cd %~dp1
javac %~nx1
java %~n1
2, luego edite C: \ Users \ your_user_name \ AppData \ Roaming \ Sublime Text 2 \ Packages \ Java \ JavaC.sublime-build (si no hay ninguno, cree uno), el contenido será
{
"cmd": ["javacexec.bat", "$file"],
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.java"
}
Configuración del sistema de compilación "JavaC_Input"
1, instale Cygwin [ http://www.cygwin.com/]
2, vaya a C: \ Users \ your_user_name \ AppData \ Roaming \ Sublime Text 2 \ Packages \ Java \, luego cree un archivo llamado "JavaC_Input.sublime-build" con el siguiente contenido
{
"cmd": ["javacexec_input.bat", "$file"],
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.java"
}
3, cree un archivo bat con el siguiente código y guárdelo en C: \ Archivos de programa \ Java \ jdk * \ bin \ para mantener todo junto. Nombre el archivo "javacexec_input.bat".
@echo off
javac -Xlint:unchecked %~n1.java
start cmd /k java -ea %~n1
{
"shell_cmd": "javac -Xlint \"${file}\"",
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"working_dir": "${file_path}",
"selector": "source.java",
"variants": [
{ "shell_cmd":"javac -Xlint \"${file}\" && java $file_base_name < input.txt > output.txt",
"name": "Run"
}
]
}
guarde esta compilación sublime y ejecute el programa con ctrl + shift + B con la variante de ejecución. Sin la variante de ejecución, solo creará un archivo .class pero no lo ejecutará.
Esta compilación leerá la entrada de input.txt e imprimirá la salida en output.txt.
Nota : tanto input.txt como output.txt deben estar presentes en el mismo directorio de trabajo que su archivo .java.
Si es usuario de Mac, siga estos pasos:
terminal abierto, vaya a su diccionario raíz escribiendo
discos compactos ..
repetidamente. utilizar
ls
para ver si has llegado a la raíz
Verá la carpeta de la biblioteca Ahora siga esta ruta Biblioteca / Java / JVM / bin Una vez que ingrese al contenedor, puede ver el archivo JavaC
Ahora necesita obtener la ruta de esta carpeta para eso, solo escriba este comando
pwd
Copie y péguelo en su archivo JavaC sublime y cree el código Java en sublime con cmd + b.
La respuesta de Alex Yao es la solución más simple, si solo desea construir y ejecutar un programa Java sin tomar ninguna entrada de la consola, use la solución proporcionada por Alex Yao . Sin embargo, si desea recibir información de la consola, consulte el siguiente enlace
Esto es mío usando texto sublime 3. Necesitaba la opción para abrir el símbolo del sistema en una nueva ventana. La compilación de Java se utiliza con la -Xlint
opción de activar mensajes completos para advertencias en Java.
He guardado el archivo en la carpeta de mi paquete de usuario como Java (Build) .sublime-build
{
"shell_cmd": "javac -Xlint \"${file}\"",
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"working_dir": "${file_path}",
"selector": "source.java",
"variants":
[
{
"name": "Run",
"shell_cmd": "java \"${file_base_name}\"",
},
{
"name": "Run (External CMD Window)",
"shell_cmd": "start cmd /k java \"${file_base_name}\""
}
]
}
El sistema de compilación JavaC funciona como un encanto, pero falla cuando desea dar una entrada desde stdin en Sublime-text. Pero puede editar el sistema de compilación para que reciba información del usuario. Esta es la compilación JavaC modificada que estoy usando en Ubuntu 18.04 LTS. Puede editar el sistema de compilación o crear un nuevo sistema de compilación.
Crear un nuevo sistema de construcción.
Copiar Pegue el siguiente código y Archivo >> Guardar .
{
"shell_cmd": "javac \"$file\"",
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.java",
"variants":
[
{
"shell_cmd":"bash -c \"javac $file\" && gnome-terminal -- bash -c \"java $file_base_name ;read\"",
"name": "Run"
}
]
}
Para editar el archivo de compilación Java C existente
Así es como lo hice con estos sencillos pasos:
Configure un nuevo sistema de construcción:
Herramientas> Sistema de compilación> Nuevo sistema de compilación
Reemplace el código predeterminado con lo siguiente:
{
"cmd": ["javac","$file_name","&&","java","$file_base_name"],
"path": "C:\\Program Files\\Java\\jdk1.7.0_25\\bin\\",
"shell": true
}
// locate the path of your jdk installation and replace it with 'path'
Guarde el archivo dándole un nombre (llamé al mío "Java")
Activar el sistema de compilación: