Problema ClassLoader.getSystemResourceAsStream

tengo el siguiente código.

Properties props = new Properties();
props.load(ClassLoader.getSystemResourceAsStream("ui.properties"));

Estoy ejecutando una compilación de Maven, por lo que este archivo está debajo

src / main / resources.

Cuando construyo el archivo y ejecuto la aplicación, el flujo de entrada es nulo.

Cualquier consejo sería apreciado.

preguntado el 28 de agosto de 11 a las 00:08

¿Qué construyes? archivo de guerra? ¿Puedes abrirlo y comprobar que este archivo está incluido? -

Cuando abro la guerra, veo WEB-INF / classes / ui.properties -

2 Respuestas

Pruebe una ruta absoluta, como "/ui.properties" (o donde sea que esté el archivo en las clases de salida o en el archivo jar).

Respondido 28 ago 11, 04:08

puedes intentar

props.load(getClass().getClassLoader().getResourceAsStream("ui.properties"));

en lugar de

props.load(ClassLoader.getSystemResourceAsStream("ui.properties"));

Respondido 28 ago 11, 04:08

Creo que esta es probablemente la respuesta. Pero ahora recibo el siguiente error: No se puede hacer una referencia estática al método no estático getClass () - Kelly Roper

entonces tal vez use el nombre de la clase en lugar de getClass (), por ejemplo, MyClass.getClassLoader (). getRes ... o mueva esa línea a un método no estático - eternidad

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.