Inspirado por esta pregunta:plataforma Java: ¿Cómo gestionar los valores de configuración para cada desarrollador
How to manage Configuration Settings for each Developer
¿Cómo puedo gestionar los ajustes de configuración de aplicación que se deben establecer para cada desarrollador sin comprobar ellos en control de código fuente en la plataforma Java?
Por ejemplo, este es el tipo de cosas que estamos haciendo ahora:
configuración del origen de datos se almacena en un archivo XML de configuración de la primavera.
Actualmente, cada desarrollador edita el archivo y hace todo lo posible para no comprometer ese archivo en el control de código fuente. Varios de nosotros tenemos parches (archivos diff) que se aplican al código antes de realizar pruebas en nuestra base de datos local y eliminar el parche antes de verificar el código. Otros desarrolladores editan y revierten los archivos de configuración a mano.
Lamentablemente, los parches están desactualizados. A veces las personas olvidan revertir su configuración local antes de comprometerse.
Mi pregunta, sin embargo, no está limitada a la configuración de conexión de la base de datos. Me gustaría encontrar una solución donde cada desarrollador pueda anular la configuración de la aplicación sin tener que alterar los archivos controlados por la fuente.
Si hay que cambiar la forma en la que estamos almacenando los parámetros de configuración, entonces creo que deberíamos hacerlo (tal vez JNDI ?, archivos de configuración externos en un camino bien conocido ?, no sé)
¿Qué harías/has hecho?
También pensé en hacer esto. Maven usa un enfoque similar: busca un archivo $ MAVEN_HOME/settings.xml. Si no hay ninguno, usa valores predeterminados de configuración. El único problema es cómo resolver el problema multiplataforma de rutas en Windows y * nix. Tal vez el enfoque de la variable de entorno de usar $ MY_SYSTEM_HOME sea suficiente. ¡Gracias! –