¡PROBLEMAS!: InfixToRPN2.java:11: cannot find symbol symbol: class RPN2 y Exception in thread «main» java.lang.NoClassDefFoundError:
Hace poco al querer compilar un proyecto para convertir expresiones en notación infija a polaca inversa o postfija con varias clases desde terminal en GNU/Linux me entero que mi configuración en java no era la adecuada. Al querer compilar me tiraba el siguiente error:
PrecedentObjectStack.java:24: cannot find symbol symbol: class RPN2 public class InfixToRPN2 extends RPN2
Para cualquier objeto fuera de la clase actual; al momento recordé la estructura de mi proyecto y cambié todo al mismo directorio, además de comentar la directiva donde estructuraba los archivos por paquetes, quedando así:
//package infixtorpn
No dió resultado, tiró el mismo error y me di a la tarea de investigar las opciones del compilador de java. Entre ellas está la de indicar la ruta de las clases así que compilé de la siguiente manera:
javac PrecedentObjectStack.java
Voila! Festejo momentáneo porque al llegar a mi clase principal, me tiró de nuevo un error:
Exception in thread "main" java.lang.NoClassDefFoundError: InfixToRPN2
De igual manera el archivo para ejecutar clases y archivos de java tiene opcion para indicar la ruta de acceso a las clases:
java -cp . InfixToRPN2
De nuevo: Listo!
Ahora bien, cuando llegué al otro día del trabajo y cambié de directorio algunos archivos me provocó errores de compilación. Decidí en ese momento investigar sobre las variables de entorno que había visto anteriormente pero por prisa no modifiqué para no volver a tener problemas de este estilo:
JAVA_HOME="/usr/java/jdk1.6.0_25" export JAVA_HOME JRE_HOME="/usr/java/jdk1.6.0_25/jre" export JRE_HOME CATALINA_HOME="/usr/local/apache-tomcat-6.0.26" export CATALINA_HOME PATH="/usr/local/bin:/usr/bin:/bin:/usr/games:/usr/local/sbin:/usr/sbin:/sbin:/usr/games:/usr/java/jdk1.6.0_25/bin" export PATH CLASSPATH=".:/usr/java/jdk1.6.0_25/lib/tools.jar:/usr/java/jdk1.6.0_25/lib/dt.jar:/usr/java/jdk1.6.0_25/jre/lib/ext/mysql-connector-java-5.1.16-bin.jar:$CATALINA_HOME/lib/servlet-api.jar:$JAVA_HOME/jre/lib/ext:$CATALINA_HOME/webapps/VIVERO/WEB-INF/classes/" export CLASSPATH
¡Al fin! Problema resuelto.
EDITADO:10 de febrero de 2012
Es necesario trabajar sin comillas para cualquiera de las variables de entorno. Ejemplo con $CLASSPATH
CLASSPATH=.
export CLASSPATH
About this entry
You’re currently reading “¡PROBLEMAS!: InfixToRPN2.java:11: cannot find symbol symbol: class RPN2 y Exception in thread «main» java.lang.NoClassDefFoundError:,” an entry on Insaneisnotfree's Weblog
- Publicado:
- May 27, 2011 / 6:19 pm
- Categoría:
- Uncategorized
- Etiquetas:
- programación java problema
No comments yet
Jump to comment form | comment rss [?] | trackback uri [?]