Instalando JAVA Development Kit
Volver al foro (Usando Guadalinex V3)-
Hola amigos:
He programado páginas WEB usando PHP durante un tiempo y me gustaría ahora desarrollar aplicaciones en JAVA, pero me da problemas al intentar ejecutar lo compilado. Me explico:
* Ya tenía instalado Java Runtime (jre) en la
carpeta /usr/lib/j2se/1.4/jre/bin/java, que es la que parece que
está operativa: java version "1.4.2-02"
* Instalo la versión 1.6.0, descomprimiendo el fichero
correspondiente, en la localización /usr/local/jdk1.6.0
* Paso a continuación a probarlo con el típico programa:
"HolaMundo".El código, por si acaso está erróneo, es el
siguiente:
public class HolaMundo
{
public static void main(String[] args)
{
System.out.println("Hola mundo!");
}
}
* comprimo usando "javac", el cual está en el directorio bin. No
da ninguna salida de error.
* al intentar ejecutarlo con java...: "# java ./pruebas/HolaMundo"
(hice un directorio "pruebas" dentro del mismo bin donde guardé
el código de HolaMundo) sale el siguiente error: Exception in
thread "main"
java.lang.NoClassDefFoundError: //pruebas/HolaMundo
* busco un poco por internet y razono que está instalada otra
versión de java anterior, por lo que supongo que ejecutando el
código desde el ejecutable "java" que está en la carpeta "bin"
de lo que me acabo de bajar "/usr/local/jdk1.6.0" debería ir
bien, pero el comando "# ./java ./pruebas/HolaMundo" desde dicha
carpeta da el mismo error.
* También he probado con otro ejecutable "java" que hay dentro de
"jdk1.6.0" dentro de una carpeta llamada "jre/bin" con idéntico
resultado.
* Antes de desinstalar el JRE antiguo me gustaría consultaros como
se soluciona ésto, antes de que la pifie. En Windows parece que
hay que configurar algo llamado CLASSPATH pero no encuentro algo
similar para Linux.
* Otras cosas que podrían ser importantes serían:
1. Tengo instalado, de antes, eclipse.
2. Parece que hay otra versión de java en una carpeta
"/usr/local/firefox2/java/jre1.5.0_09/bin" que supongo
que es la que utiliza firefox.
3. Intenté hacer un enlace simbólico con "ln -s"
en /usr/bin del ejecutable "javac" (con lo que supongo
se ejecuta llamándolo desde cualquier directorio) pero
me dice, al ejecutarlo o hacer un dir, que "javac" tiene
"demasiados niveles de enlaces simbólicos". Ese enlace
lo hice como root.
Os agradecería cualquier información al respecto para poder empezar a
programar en java. Un saludo. Gracias.Aurelio Gallardo IES Seritium Tecnología Jerez Fra - Cádiz ;-) ...-
Parece que tienes una ensalada de versiones del entorno java. Sin duda, yo no instalaría los paquetes a mano, y utilizaría herramientas como synaptic o apt-get.
Primero comprueba que versión de java es la que actualmente utiliza el sistema. Abriendo una terminal escribes:
java -version para el entorno de ejecución.
javac -version para el entorno de desarrollo.
Si ves que efectivamente tienes un entorno de ejecución y un entorno de desarrollo y no vas a utilizar características especiales de la versión 1.6 de java, entonces aplicaría la primera ley de la informática que dice que si algo funciona mejor no tocarlo.
En cuanto a la variable de entorno CLASSPATH, puedes definirla en el archivo /home/[tu_usuario]/".bashrc" que se ejecuta siempre al iniciar sesión con dicho usuario. Dentro del archivo pon:
export CLASSPATH=$CLASSPATH:[la ruta que vayas a poner]
de igual manera puedes definir en este mismo fichero, la variable PATH para que apunte al directorio del entorno java. ej: /usr/local/jdk..../bin
-
agrgal
Iniciado
Envíos: 12