sábado, 21 de mayo de 2016

[SublimeText] Ejecutar programas de Java aplicado a un entorno XFCE



Sublime Text es sin duda uno de los editores que mas gustan por su sencillez, simpleza y la cantidad de extensiones que podemos encontrar, ademas de la portabilidad y usa serie de opciones. En este caso la parte de la codificación es reconocido y dominado, pero también detrás de sublime hay un sistema de construcción, compilación y ejecución que se adapta a los programas mas sencillos, sin embargo muchos de ellos son demasiados básicos, como ejecutar el compilador y mostrar los elementos. En el caso de java tenemos disponible un sistema de construcción ya definido que lo podemos encontrar en:


Sin embargo solo compila y nos genera el archivo class de Java por lo que vamos a crear nuestro propio sistema de compilación y ejecución para java, cabe destacar que este procedimiento es con un entorno grafico de XFCE con Debian 8. Se preguntaran que tiene que ver esto, pero es importante ya que sublime tiene su propia consola pero no interactúa con el programa es decir, si mi programa tiene pausas de pantalla como en el caso de ingresar un valor pues nos vamos a encontrar que los valores nunca llegan a la ejecución de Java por lo que terminara mi programa en cuanto lo ejecutemos, para evitar esto lo ejecutaremos directamente en la terminal (ahí es donde entra XFCE), pero el procedimiento aplica para cualquiera solo sabiendo cual es la terminal que se usa o en el caso de Windows. 

Bueno empezamos para crear un archivo de configuración para esto vamos a la opción Tools- Build System - New Build System

Nos aparecerá un archivo en tipo JSON que modificaremos con el siguiente código:



{
    "cmd": ["javac", "-Xlint", "$file"],
    "file_regex": "^(...*?):([0-9]*):?([0-9]*)",
    "working_dir": "${file_path}",
    "selector": "source.java",
    "variants":[
      {
        "name":"run-xterm",
        "shell_cmd":"xterm -hold -e 'java $file_base_name'",
        "shell":"true"
      },
      {
        "name":"run-xfce",
        "shell_cmd":"xfce4-terminal -x bash -c 'java $file_base_name ; read -p TERMINADO'",
        "shell":"true"
      }      

    ]
}



Explicando un poco, esta dividido el archivo en 3 secciones, la primer y principal vienen los siguientes campos:

cmd: este campo es obligatorio o se ponen con [ ] por si es una colección de valores, ahí se especifica la linea de comando que utilizaremos se puede decir por default en este caso es la compilación del programa. El paremtro $file sera el nombre del archivo que ejecutemos para el guardado (esto sublime se encarga automáticamente)

file_regex y working_dir: Estos parámetros son opcionales, pero los agregamos para evitar diferentes tipos de errores si el codigo es cambiado a otro contexto de ayuda. El file_regex es para buscar que el nombre del archivo venga con un formato correcto y working _dir para hacer las compilaciones y trabajos directamente en la carpeta donde el archivo esta almacenado.

selector: Aunque en la documentación oficial marca que es optativo se utiliza para que sublime reconozca el formato y si tiene un build configurado para esa compilación lo active.

Variants:  Son los cambios que quieras ejecutar en algún momento dado, ya mas personalizados, en este caso ahí tengo los elementos de la configuración de ejecución.

name: Los elementos name nos ayudaran a reconocer que quiero que se ejecute al momento de activar ejecución en sublime.

Shell_cmd y shell: Lo utilizamos para que los comandos se ejecuten directamente en la linea de comandos del sistema operativo como tal, en este caso tenemos dos opciones el xterm (consola común que varias distribuciones de linux tienen y la de xfce4-Terminal que viene en el entorno grafico de xfce)

Guardamos el archivo que este dentro de la user de donde esta instalado sublime, en este caso cuando le damos guardar directamente el programa nos lleva a ese path, mucho cuidado que quede con terminación sublime-build. Este procedimiento lo hacemos una sola vez, una ves terminado cerramos y abrimos sublime text.



Ya puedes codificar tus programas en java, ahora lo que vamos a ser es simplemente cuando quieras correr tus aplicaciones verificar que en Build-System este activada tu configuración



Y ahora puedes presionar shift + Ctrl + B y escoger la opción que quieras recordando que la primera es compilación, la segunda es ejecución en Xterm y la tercera ejecución en xfce-terminal


Si quieres repetir la ultima opción elegida puedes poner Ctrl + B solamente y se repetirá, también si es la primera vez que estas usando el comando en tu programa Ctrl+ B ejecutara la primer opción que tienes.

Si alguien hace un archivo para otra configuración ya sea lenguaje o plataforma compártelo para mejorar las opciones.


Editor: SublimeText

No hay comentarios:

Publicar un comentario