Maven: ¿Módulo compartido por múltiples proyectos?
-
26-10-2019 - |
Pregunta
Tengo múltiples proyectos que depende del mismo modelo de datos. Este último está definido por un proyecto Maven. Tomemos como ejemplo dos proyectos compuestos A y B que incluyen múltiples módulos cada uno y que dependen de este modelo de datos. El Proyecto A y B no están relacionados.
¿Cuál es el mejor enfoque en este caso? ¿Dejar el modelo de datos como un proyecto independiente con A y B dependiendo de él? ¿O para definir el modelo de datos como un módulo e incluirlo en los dos proyectos compuestos A y B (no sé si muchos proyectos pueden compartir un módulo)?
Gracias
Solución
La "forma maven", especialmente porque los proyectos A y B no están relacionados, sería crear un tercer proyecto para el código compartido. Tendría su propia ID y versión de artefacto (separado de A y B).
Cuando hago esto, uso el maven-release-plugin
Para etiquetarlo e implementarlo en mi servidor de repositorio de Maven (Nexo). Si no está trabajando de esta manera, puede construirlo manualmente y irá en su repositorio local. Cuando construye los otros proyectos, se resolverá.