2010-03-10 13 views
23

Decidió usar el paquete de configuración común de Apache para analizar un archivo XML.ConfigurationException en Java?

decidí hacer un:

XMLConfiguration xmlConfig = new XMLConfiguration(file); 

A lo que Eclipse se quejó de que no he cogido una excepción (Unhandled exception type ConfigurationException), por lo que golpear la confianza surround with try/catch y se añadió el siguiente código:

try 
    { 
     XMLConfiguration xmlConfig = new XMLConfiguration(file); 
    } 
    catch (ConfigurationException ex) 
    { 
     ex.printStackTrace(); 
    } 

Sin embargo ahora se queja:

No exception of type ConfigurationException can be thrown; an exception type 
must be a subclass of Throwable 

No entiendo por qué me ha dado ese error cuando Eclipse es el que sugirió agregarlo.

Respuesta

28

org.apache.commons.configuration.ConfigurationException extiende org.apache.commons.lang.exception.NestableException.

¿Tiene Commons Lang en su camino también? De lo contrario, Eclipse no resolverá la clase ConfigurationException, y obtendrá ese error.

+1

Ahora recibo este error: 'Excepción en el hilo" main "java.lang.NoClassDefFoundError: org/apache/commons/collections/Predicate'. ¿Sabes por qué es esto? Muy confundido. ¡Lo agregué a mis bibliotecas en Eclipse! – Federer

+4

@ 8EM: Parece que también necesita Colecciones de Commons. – skaffman

+0

aún puede recibir errores si no tiene cuidado con las dependencias de versión de este .... consulte aquí para obtener más información: http: //stackoverflow.com/a/7651867/26510 –

20

Usted necesita Apache Commons Lang2,6

(versión actual de Configuración común Apache (1.8) planteo que funciona con la versión 3.1 de la biblioteca de Apache Commons Lang, puede que tenga que comprobar las dependencias de configuración comunes here)