Compilar y ejecutar JAVA desde Sublime Text
En esta entrada veremos como configurar un llamado Build System de Sublime Text para que al presionar ctrl + b se compile y ejecute nuestra aplicación en JAVA.
Lo primero que debemos hacer es iniciar Sublime Text, una vez lo hallamos hecho, vamos a Tools -> Build System -> New Build System... Esto abrirá un pequeño archivo con unas lineas escritas en JSON, de modo que debemos copiar el siguiente código y pegarlo en este archivo.
Y con eso ya hemos terminado, para compilar y ejecutar nuestros programas en JAVA tan solo debes ir a Tools -> Build System y elegir el nombre del archivo que has modificado antes, en mi caso ejecutarJava. A partir de ahora, podremos compilar y ejecutar nuestros programas en JAVA presionando ctrl + b.
Lo primero que debemos hacer es iniciar Sublime Text, una vez lo hallamos hecho, vamos a Tools -> Build System -> New Build System... Esto abrirá un pequeño archivo con unas lineas escritas en JSON, de modo que debemos copiar el siguiente código y pegarlo en este archivo.
//Codigo valido para Windows y Linux { "cmd": ["javac ${file_name} && java ${file_base_name}"], "shell": true }Cuando lo hallamos hecho, guardamos dicho archivo en la carpeta donde nos sugiere Sublime Text, y le ponemos un nombre descriptivo como por ejemplo ejecutarJava.sublime-build, ten cuidado que la extensión del archivo sea .sublime-build.
Y con eso ya hemos terminado, para compilar y ejecutar nuestros programas en JAVA tan solo debes ir a Tools -> Build System y elegir el nombre del archivo que has modificado antes, en mi caso ejecutarJava. A partir de ahora, podremos compilar y ejecutar nuestros programas en JAVA presionando ctrl + b.
Tienes algo similar para C/C++?...
ResponderEliminarEn la siguiente entrada está lo que necesitas, espero que te sea de ayuda.
EliminarSaludos.
http://ayudasprogramacionweb.blogspot.com/2012/12/compilar-y-ejecutar-cpp-desde-sublime-text.html
Me gustaría que publicaran unas ilustraciones para comprender mejor, porque la mayoría no se sabe como, donde guardarlo de manera correcta.. de antemano gracias y por cierto muy buena página, sigue así.. saludos
ResponderEliminarEn algunos tutoriales he colocado pantallazos pero en este no me pareció necesario. De todas formas la duda que tienes, está explicada en la entrada, ya que cuando intentas guardar un "new Build System", este ya te aparece en la dirección correcta, solo debes cambiar el nombre "untitled.sublime-build" por otro más descriptivo como por ejemplo "ejecutarJava.sublime-build", haces click en guardar y listo.
EliminarEspero que te sea de ayuda, y si tienes alguna otra duda o sigues sin poder compilar y ejecutar tus programas en JAVA con sublime text, no dudes en comentar e intentaré ayudarte. ;)
pues ami me toco configurarlo para q me sirviera por q me aparecia q no se podia
Eliminarno se puede man, Como que no encuentra Mi carpeta en donde Esta mi archivo, me sale '"javac inicio.java && java inicio"' is not recognized as an internal or external command,
Eliminaroperable program or batch file.
[Finished in 125ms with exit code 1]
[cmd: ['javac inicio.java && java inicio']]
[dir: C:\Users\marvi\OneDrive - Fundación Kinal -Alumnos-\Desktop\Joao\New stuff\KINAL]
[path: C:\Program Files\Common Files\Oracle\Java\javapath;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\nodejs\;C:\Users\marvi\AppData\Local\Microsoft\WindowsApps;C:\Users\marvi\AppData\Roaming\npm]
Tengo instalado VS 2010, cómo procedo para compilar y correr C#?
ResponderEliminarEn el Sublime Text, programas sencillos, saludos desde México.
EliminarAcabo de hacer una nueva entrada sobre eso, espero que te sea de ayuda.
EliminarSaludos.
Compilar y ejecutar C# desde Sublime Text
Sabes si en la consola del sublime se admite entrada de datos utilizando Scanner ? Antemano Gracias por la respuesta.
ResponderEliminarPues la verdad es que no se puede, no tiene mucho sentido que implementen una consola sublime text, y solo sirva para mostrar datos, pero bueno. La única solución es hacer que sublime text abra un CMD.exe o un terminal según tu SO, algo que puedes hacer con las entradas que subí hace un tiempo:
EliminarEjecutar en cmd.exe desde Sublime Text
Ejecutar en Terminal linux desde Sublime Text
Saludos y suerte, si tienes alguna otra cuestión no dudes en comentar. ;)
disculpa espero me puedas ayudar, lo que pasa es que ya configure todo y aun asi no me corre el codigo, solo aparece la señal abajo de "building" y despues de unos segundos desaparece dejando la consola en blanco, ya configure para que pudiera ejecutar en el cmd javac pero aun asi solo me aparece la consola en blanco del sublime al aplastar Control+B, ya cree la .sublime-build y la seleccione para que utilizara esa pero sigue igual
ResponderEliminarPues acabo de repasar las entradas y están bien, lo primero que debes tener es el directorio \bin del JDK en la variable PATH, para ello puedes probar abriendo un CMD y escribiendo java o javac. Lo siguiente es hacer el sublime-build que haría que la salida del programa aparezca en la consola de sublime text, y por último cambiar la línea del archivo exec.py de sublime para que ejecute un CMD y aparezca ahí la salida del programa. También ten en cuenta que esto es para Windows. Al final te pongo los enlaces para hacer todo lo que te he comentado en orden, por si te ha faltado algo por hacer.
EliminarUn saludo y suerte, si sigues con problemas, vuelve a comentar a ver si conseguimos solventar el problema. ;)
http://ayudasprogramacionweb.blogspot.com.es/2012/11/compilar-y-ejecutar-java-en-cmd-windows.html
http://ayudasprogramacionweb.blogspot.com.es/2012/12/ejecutar-en-cmdexe-desde-sublime-text.html
gracias por la ayuda, aunque sigo teniendo el mismo problema por lo menos ya me indica los errores, el siguiente link es una foto de lo que me aparece:
Eliminarhttp://www.flickr.com/photos/68067166@N02/8500003168/in/photostream
la clase que trato de ejecutar es un simple print que dice hola, nose si tenga que ver con que guarde la clase en una carpeta del escritorio diferente a la por defecto por que no recuerdo cual es o si tiene que ver que actualize el jdk, pero eso es lo que e movido mas recientemente y cambie de la version 64 bits a la de 32 cuando en realidad es de 64 la mia, no creo que tenga que ver pero igual lo comento.
Gracias de antemano por tu ayuda
Pues ese error aparece cuando intentas ejecutar un código java no soportado por tu máquina virtual, ya sea por que necesites una versión anterior o posterior. Te recomiendo que abras el CMD, e intentes compilar y ejecutar tu archivo Java en el, para ver si funciona correctamente. Para ello en la siguiente entrada lo explico todo al detalle.
EliminarCompilar y ejecutar JAVA en CMD
Si continua el mismo error, ejecuta en el CMD "java -version" y "javac -version" y coméntame que devuelven estos comandos y así descartar una versión incorrecta del JDK.
Mucha suerte!
al intentar compilar aparece :
ResponderEliminarCompilador de Microsoft (R) Visual C# 2010, versión 4.0.30319.1
(C) Microsoft Corporation. Reservados todos los derechos.
fatal error CS2007: Opción no reconocida: '/nologo" "'
[Finished in 0.3s with exit code 1]
Pues puede ser que tu versión de .NET sea anterior a la mía, prueba a quitar en el .sublime-build la opcion "/nologo", esta opción no es importante, solo sirve para que no salga una frase sobre el copyright de Microsoft en la compilación.
EliminarSaludos.
Hola, de antemano gracias por compartir esta entrada. Realice tus pasos y todo bien. Luego creé un pequeño código donde imprima un dato String que he capturado por un JOptionPane y luego imprimirlo por System.out y también lo probe con un JOption pero al presionar Control+b solo abre un campo en la parte inferior pero no corre.
ResponderEliminar¿Que puede ser lo que le esté faltando?
Gracias
se puede hacer algo parecido para python ?
ResponderEliminar#Java algún problema con el package del ST2, #error #NoSuchElementException p/lectura por teclado p/String o int por consola funciona :-(
ResponderEliminar¿Cual es el error que te sale? Es muy raro que no te vaya bien, ¿tu código está correcto? Si todo está bien, me huele a problema de Sublime Text, intenta reinstalarlo completamente a ver si se soluciona, no se me ocurre nada más la verdad viendo ese mensaje que me has puesto.
EliminarSuerte
Hola Alejandro, lo estoy usando para muchos ejercicios (operaciones: loop, for,etc) pero en un programa para leer desde teclado y lo imprima, en consola me imprime la orden de pedido de datos y sin parar tamb imprime #NoSuchElemenetException, muchos errores de linea de programa que no tengo( ej .java 1050) y a lo ultimo la linea donde est[a el metodo nextInt(), todo esto sin parar lo da por finalizado,El mismo programa lo probe en consola linux y funciona, Estoy intentando vincularlo al jvm/jdk de mi ubuntu pero sin exito. Gracias
ResponderEliminarLa consola de sublime no permite introducir datos desde teclado, para hacer el ejercicio debes hacer que tus programas se ejecuten en el cmd desde sublime, esto se hace muy facil siguiendo esta entrada
Eliminarhttp://ayudasprogramacionweb.blogspot.com/2012/12/ejecutar-en-cmdexe-desde-sublime-text.html
En el cmd ya puedes introducir datos datos sin problemas, si usas linux busca mi entrada de ejecutar sublime text en terminal.
Saludos
OK Alejandro, Solucionado, funciona muy bien la lectura por consola y la impresión en pantalla de resultados,
ResponderEliminarPor favor alguien podria ayudarme, algo así para ejecutar y compilar Java en Termina y poder ingresar datos con Scanner pero para sistema Mac OS X??
ResponderEliminarSe los agradeceria tanto, porque ya he buscado y no encuentro nada
Este comentario ha sido eliminado por el autor.
ResponderEliminarSaludos. Despues de realizar todos los pasos descritos, cuando presiono CTRL + B el programa hace el build y si no hay errores, muestra un mensaje, por ejemplo Finished in 0.5s pero no ejecuta las lineas de codigo, sera que eso no se puede en este editor? Intente tambien haciendo lo descrito aqui:
ResponderEliminarhttp://ayudasprogramacionweb.blogspot.com.es/2012/11/compilar-y-ejecutar-java-en-cmd-windows.html
http://ayudasprogramacionweb.blogspot.com.es/2012/12/ejecutar-en-cmdexe-desde-sublime-text.html
no me funciona...dejare de tratar de reinventar la rueda y me quedo con el ide de netbeans
ResponderEliminarBuen Día, seguí todo los pasos y me salta este mensaje:
ResponderEliminar"javac" no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.
[Finished in 0.1s with exit code 1]
Saludos, espero sus respuestas.
Tienes que tener el JDK de java instalado, una vez lo tengas, tan solo sigue los pasos de la siguiente entrada:
Eliminarhttp://ayudasprogramacionweb.blogspot.com.es/2012/11/compilar-y-ejecutar-java-en-cmd-windows.html
La finalidad es hacer visible tanto java como javac desde la consola (sin tener que ir a las rutas originales) de modo que cuando sublime text ejecute javac para compilar los archivos en java, este sea encontrado por el sistema y ejecutado correctamente,
Saludos.
La verdad que tengo el mismo error que tiene el amigo Ronnie no funciona. Que puede ser?
ResponderEliminarHe podido comprobar que en ciertos casos (creo que en Sublime Text 3) el comando se ejecuta enteramente, incluyendo los corchetes. Por lo tanto sobran...
EliminarSi este fuera tu caso ejecuta en la consola "javac Nombre.java && java Nombre" sin comillas y en el directorio del archivo en java (recuerda que el nombre de la clase y el del archivo deben coincidir y empezar por mayúscula) Si funciona, quita los corchetes de la linea de comando que se ejecuta en el "build system" que has creado, tal que así:
{
"cmd": "javac ${file_name} && java ${file_base_name}",
"shell": true
}
Espero haberte ayudado.
Saludos!!
MUCHAS GRACIAS! Esto me sirvio. estaba cansado de tener que abrir cmd
EliminarBuenas tardes, estoy iniciando la programación en Java (apuntando a Android, se que existe Android Studio!) paro lo cual estoy usando Sublime Text 2.
ResponderEliminarQuisiera hacer seguimiento de las variables para ir viendo los cambios a medida que se ejecuta las aplicaciones de práctica y googleando encontré JDebug - A Java Debugging plugin for Sublime Text.
Una vez instalado me pide configurar (JDebug.sublime-setting) y es allí donde entiendo cómo se debe hacer correctamente.
Agradecería si alguien puede darme un ejemplo de configuración: a continuación la opción de configuración recomendada y luego está el ejemplo de archivo que debe llevar la configuración.
Saludos!
Setting up JDebug
Setting up JDebug is very simple as it has only few settings to start with. You can copy and paste the default settings into user settings and update the following settings based on your environment.
workingdir - You need to set your current project directory like c:/worksapce/TestService (Windows) or /home/user/abc/workspace/TestService (Linux or Ubuntu)
commandline - Set the jdb command with arguments. If JDK/bin is not in your environment PATH then you need to specify full path to the jdb command. Also change the hostname and port in which the java application service is running and listening.
sourcepath - The path to the source file with in the project. For ant project it usually /src/ and for maven usually /src/main/java.
Archivo de configuración JDebug.sublime-setting:
{
"workingdir": "C:/Workspace/TestService",
"commandline": "jdb -connect com.sun.jdi.SocketAttach:hostname=localhost,port=8849",
"source_path_prefix": "/src/",
"push_pop_layout": true,
"close_views": true,
"debug": false,
"layout":
{
"cols": [0.0, 1.0],
"rows": [0.0, 0.75, 1.0],
"cells":
[ // c1 r1 c2 r2
[0, 0, 1, 1], // -> (0.00, 0.00), (1.00, 0.75)
[0, 1, 1, 2] // -> (0.00, 0.75), (1.00, 1.00)
]
},
"breakpoint_scope": "keyword.jdb",
"breakpoint_icon": "circle",
"position_scope": "entity.name.class",
"position_icon": "bookmark",
"changed_variable_scope": "entity.name.class",
"changed_variable_icon": "",
"file_group": 0,
"console_group": 1,
"console_open": true,
"variables_group": 1,
"variables_open": true,
"breakpoints_group": 1,
"breakpoints_open": true
}
Gracias me ha ahorrado muchos dolores de cabeza.
ResponderEliminarhola, me compila el programa pero no me lo ejecuta, alguien me puede ayudar? muchas gracias
ResponderEliminarMe sirvió la técnica, para poder ejecutar programas con clojure quedó asi :
ResponderEliminar{
"cmd": "java -jar /ruta_al_clojure.jar/clojure-1.8.0.jar ${file_path}/${file_name}",
"working_dir": "/ruta_al_clojure.jar/",
"shell": true,
"selector": "source.clojure"
}
oye amigo a mi no me funciona me aparece este mensaje
ResponderEliminar""javac HolA.java && java HolA"" no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.
Este comentario ha sido eliminado por el autor.
ResponderEliminarY para ruby como le hago [tengo sublime text 3]
ResponderEliminarTan solo tendrias que usar el interprete de ruby y la variable ${file_name}.
EliminarMe podrías poner un ejemplo es que soy novato muy no le hallo mucho por favor
EliminarSi usas linux:
Eliminar{
"cmd": ["ruby ${file_name}"],
"shell": true
}
Si usas windows:
{
"cmd": ["c:\Ruby\22\bin\ruby.exe ${file_name}"],
"shell": true
}
Ten en cuenta que esto es solo un ejemplo, y en Windows Ruby podria estar instalado en uno directorio o tener otra version distinta. Despues de instalarlo, comprueba la ruta hacia el archivo ruby.exe y utiliza esa ruta en el archivo sublime-build.
No me funciona men, dice no build
ResponderEliminarPerdona, soy el unico que cuando le incorporas un Scanner, para pedir el usuario que introduzca datos, al ejecutar "java"(ctrl +b), lo ejecute, escribes un ejemplo "10", se quede ahí y no haga nada? y si usas otro programa como Netbeans, si que te ejecuta después de escribir "10".
ResponderEliminarQue tal, una pregunta, estoy tratando con python, según mi lógica es mas o menos así:
ResponderEliminar{
"cmd": ["python ${file_name}"],
"shell": true
}
Pero al presionar ctrl+B, no se ejecuta nada. Y si, el built esta seleccionado con miPython. Podrías ayudarme.
Saludos.
Hola Cesar, Sublime Text 3 (y posíblemente el 2) traen por defecto un build system para python, de modo que solamente necesitas seleccionar el build system "Automatic" y cuando estés editando un archivo .py, este debería ejecutarse en sublime text al presionar Ctrl+B o Tools->Build en el menú.
EliminarMuchas gracias amigo. Es lo que he estado buscando. Me sirvió de mucho.
ResponderEliminarMuchaaas Gracias Craack, probé de las mil maneras para que me funcione en Linux y este me funciono. Gracias
ResponderEliminar