domingo, 27 de mayo de 2012

El comando Javac

Introducción: 
Cuando programamos usando un IDE como netbeans, el proceso de compilación es transparente para nosotros, siempre me preguntaba cómo el IDE compilaba las clases, aqui una breve descripcion del comando javac, comando para compilar.

Uso:
javac [options] [sourcefiles][classes] [argfiles]

Descripcion:
Javac es el compilador de java, un programa ejecutable que nos permitirá compilar nuestro codigo fuente, lee las clases y definición de interfaces escritas en el lenguaje java y los compila generando los  byte codes dentro de los archivos .class

Cómo podran ver es necesario pasar el path(ruta) de nuestra clase o clases al comando javac, hay dos maneras de pasar los nombres de los archivos de código fuente.

* Para un numero reducido de archivos fuentes, simplemente listar los nombres de archivos.
* Para un gran número de archivos de código fuente, listar los nombres de los archivos fuentes en un archivo de texto separados por espacios en blanco o saltos de linea. A continuación, utilice el nombre del archivo con el comando javac, precedido por un carácter @.
No esta demas recordar que los nombres de archivos de código fuente deben tener la extensión .java y ambos, clase y archivo deben tener el mismo nombre, es decir si mi clase se llama Hola2 entonces mi archivo debe llamarse Hola2.java para despuesde compilar tener un archivo llamado Hola2.class, el cual contiene los bytecodes.
Por defecto el compilador deja los archivos .class en el mismo directorio del archivo fuente, es posible indicarle explicítamente en donde colocarlos, mas adelante lo veremos.

Ejemplos:
Entorno: Ubuntu
Directorio: /home/betito/java
Clases: Hola.java Hola2.java
Abrimos una terminal en java, por defecto nuestra terminal esta posicionada en nuestro directorio home (/home/betito) asi que me muevo al diretorio java.

cd java

ejecutamos el comando javac en la terminal.

javac Hola.java

Despues de esto veremos que en nuestro directorio java tenemos un Hola.class
Ahora veamos como compilar dos clases.
Ejecutamos lo siguiente en la terminal.

javac Hola.java Hola2.java

Por ultimo he creado un archivo llamado filelist.txt con los nombres de las clases. Ejecutamos lo siguiente en nuestra terminal.

javac @filelist.txt


No hay comentarios:

Publicar un comentario