2010-09-12 18 views

Respuesta

35

perfiles definidos en un POM se heredan de los padres en un POM niño que se extiende a los padres, no hay nada que hacer. Y por si acaso, el Maven Help Plugin tiene objetivos muy útiles que permiten hacer frente a los perfiles:

  • help:active-profiles: se enumeran los perfiles que se encuentran actualmente activo para la construcción.
  • help:all-profiles: se enumeran los perfiles disponibles en el marco del proyecto actual.
+0

Era una especie de complemento a su respuesta (un ejemplo), en realidad no era una respuesta en sí misma. Entonces me di cuenta de que había leído mal la pregunta OP. – Justin

+0

@Justin Ok, tengo ahora :) –

+3

La única probmlem, que en los niños la ayuda Perfiles: perfiles activos no muestran el perfil heredada, que es engañosa creo. –

4

No es sólo posible, es obligatorio. Si declaras un POM padre, obtienes todos sus perfiles.

+0

¿Puede proporcionar una fuente para eso? Esto me lleva a la frustración extrema cuando quiero ejecutar un objetivo solo por activación y solo en el padre. Pensaba que podría hacerlo a través de un perfil, pero no, no estoy seguro. – mkobit

6

no creo que se hereda. http://www.dashbay.com/2011/03/maven-profile-inheritance/ http://looking4q.blogspot.com/2011/01/maven-profiles-inheritance.html Usted puede encontrar los perfiles disponibles es muy probable, ya que se activan por defecto

+2

El primer enlace parece muy bueno; podrías considerar resumir su contenido en tu respuesta. Por lo tanto, el resultado es * hereditario *, pero no del todo: solo se heredará parte de la funcionalidad y los perfiles heredados solo tendrán impacto en el pom principal donde se definan, no en los poms secundarios. – eis

0

Probé perfil inheritanced con Maven 3.3.9. Si el padre pom declara el módulo hijo (agregación), el perfil es visible en el módulo hijo. Si el padre pom no declara el módulo hijo (herencia), el perfil no está visible.