Estoy buscando hacer algo que pensé que no iba a ser difícil.Java -jar: acceder al archivo de configuración externa
Tengo una aplicación que me gustaría empaquetar como un contenedor porque tengo ~ 30 dependencias y me gustaría poder implementar un único archivo.
Tengo algunos archivos de configuración, un archivo de propiedades y un archivo de configuración de primavera, y mi archivo log4 props, que me gustaría tener externos al contenedor. Supongo que esperaba que si los colocaba en el mismo directorio que el contenedor los encontraría cuando se ejecutaran, pero no es así.
Durante el desarrollo, tengo estos archivos en la raíz del classpath para mi proyecto eclipse y la aplicación los encuentra muy bien. Siento que me falta algún aspecto clave de la teoría jar/classpath ...
así que lo que quiero es poder poner los archivos de configuración y el jar en el mismo directorio y hacer que la aplicación encuentre los archivos de configuración cuando lo ejecuto con la cosa java-jar estándar.
¿No hay una manera simple de lograr esto?
Gracias por la respuesta Jay R . mi Manifiesto tiene esto en él, que creo que es lo que sugieres: Manifiesto-Version: 1.0 principal clase: Class-Path:. –
Joel
Agregué más a mi respuesta que espero ayude. –
Gracias de nuevo por su respuesta Jay R. Su ayuda es muy apreciada. No estoy teniendo mucha suerte. Estoy usando el archivo log4j.properties en lugar de la configuración xml, pero creo que siempre que el archivo esté en classpath log4j debería encontrarlo bien. El mismo trato con el archivo de configuración de primavera: llamo a mine spring.xml, pero mientras esté en el classpath no debería haber ningún problema. Mi MANIFEST.MF está siendo generado por el exportador "Ejecutable de Runnable ..." de Eclipse pero se ve exactamente como el de la muestra. No estoy seguro de lo que está pasando aquí. Gracias de nuevo por su comprensión. – Joel