Programar java en linux. Como ejecutar????

Cristian Gutierrez crgutier en dcc.uchile.cl
Mie Dic 15 22:35:57 CLST 2004


Hoy en la ma~nana, Isaac Smith dijo:
> Hola a todo el mundo de la lista

Hola mundo? :)

> hace poco empeze a programar en java, es decir, estoy en proceso de
> aprendisaje.
> He realizado algunas cosas simples pero no he logrado ejecutar nada,
> estoy ocupando kaffe (script: javac y java), con javac ni un drama,
> todo compila a la perfeccion pero al momento de ejecutar mi clase que
> contiene el main me sale un error, algo asi como excepcion de clase no
> encontrada (no tengo en estos momentos la salida, pero es algo asi),

[Sacando la bola de cristal]

Supongamos que tu código está en el archivo programa.java. Dentro de él,
tienes la clase MiPrograma, que es la que tiene el "main":

,----
| class MiPrograma {
| 
|   public static void main (String args[]) { ... }
| 
| }
| 
| // etc
`----

Entonces al compilador le das el nombre del archivo:

  $ javac programa.java

Esto te genera el archivo MiPrograma.class, que es el que ejecutas con
el intérprete:

  $ java MiPrograma

El CLASSPATH, si no estás haciendo nada sofisticado, déjalo en "."
(punto, el directorio actual) y ejecuta ambas cosas parado en el
directorio en donde está tu código. Normalmente eso es infalible.

Muchas veces, el nombre del archivo es el mismo que el de la clase, por
ejemplo, si este archivo se hubiese llamado MiPrograma.java, el
compilador recibe ése nombre de archivo.

Otra salvedad es que si tienes más de una clase en el mismo archivo, la
que tiene el main que se puede ejecutar es la que diga "public class
AlgunaClase", porque Java permite una sola clase pública por archivo (y
de hecho, el compilador te lo recordará si no es así :-).

Con respecto a Kaffe v/s GCJ (para que no sea tan OT), no tengo mucha
experiencia con ellos, pero sí sé que GCJ te puede generar binarios
nativos para la plataforma (Linux en este caso). Eso, mientras no estés
usando cierta biblioteca de ventanas que no es soportada por GCJ (no
recuerdo si era AWT, Swing, SWT, o alguna combinación de las
anteriores).

Saludos,

-- 
Cristian Gutierrez			http://www.dcc.uchile.cl/~crgutier
crgutier[@]dcc.uchile.cl                        Jabber:crgutier en jabber.org

"The best part of banging your head against a wall is when you stop. 
 Its the same with windows." 




Más información sobre la lista de distribución Linux