Problema con Java en Linux

Iniciado por Dark Side, 28 Marzo 2012, 21:02 PM

0 Miembros y 1 Visitante están viendo este tema.

Dark Side

Hola! Les cuento que hace un tiempo empece a programar en Java sobre windows y al momento de pasarme a linux he tenido un problema, los programas que ya había realizado y utilizado sobre win los puedo ejecutar desde los programas que utilizo para programar y compilar, pero al momento de intentar ejecutarlos desde la consola me aparece este error:
Exception in thread "main" java.lang.UnsupportedClassVersionError: ejercicios/Ejc2e7 : Unsupported major.minor version 51.0
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
        at java.net.URLClassLoader.access$000(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:212)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: ejercicios.Ejc2e7. Program will exit.


Este es un programa simple, Ejc2e7 es un ejemplo de una iteración que ejecutándola directamente desde NetBeans en linux funciona y sobre windows desde la consola también...
¿Alguien sabe a que puede deberse el problema en linux?

Desde ya, Gracias y SalU2.

Dark Side

visualfree

La respuesta es simple.

Cuando utilizan netbeans eclipse o un ide te detecta automaticamente donde tienes tu maquina virtual
o lo puedes configurar.

Pero cuando intentas compilar e interpretar desde java debes configurar las variables de entorno
en linux.

por ejemplo:

Si escribes desde el terminal lo siguiente "javac -version"  deberia salirte la version actual de tu compilador y si escribes "java -version" deberia salir la version actual de tu interprete..
pero bueno como solucionas esto..


De la siguiente forma:

en mi caso yo tengo instalado java en la siguiente ruta:

/home/netcat/jdk1.7.0_03

configuremos java (Como root):


update-alternatives --install "/usr/bin/java" "java" "/home/netcat/jdk1.7.0_03/bin/java" 1
update-alternatives --set java /home/netcat/jdk1.7.0_03/bin/java



Finalizado esto escribe java -version y te deberia aparecer la version actual.

Ahora configuremos javac (Como root):


update-alternatives --install "/usr/bin/javac" "javac" "/home/netcat/jdk1.7.0_03/bin/javac" 1
update-alternatives --set javac /home/netcat/jdk1.7.0_03/bin/javac


Finalizado esto escribe javac -version y te deberia aparecer la version actual del compilador.


Y eso seria todo.

saludos suerte...

Dark Side

Problema solucionado! Muchas gracias visualfree!

SalU2, Dark Side.

peonxpeon

Ya se que este post es algo viejito, pero me registre en el foro solo para agradecer por esta infomacion que me fue muy util.
GRACIAS!! compañero.