2012-09-18 18 views
10

Maven profiles documentation no lo menciona, y es probable que sea un signo de diseño de proceso incorrecto, pero existen reglas para resolver las propiedades conflictivas si hay varios perfiles activos y todos definen el mismo ¿propiedad?¿Cómo se resuelven las propiedades conflictivas si se activan varios perfiles?

Im bastante seguro de que declaración local (en el pom.xml) dejaría sin efecto la declaración en el settings.xml, no tan seguro para los perfiles colocal

  • es el orden de la declaración dentro del archivo importante?
  • ¿existe una orden de activación definida que puede ser importante?
  • es la orden importante, si se activa manualmente a través de CLI (-Pprofile1,profile2)?

Gracias

+3

Compruebe http://jira.codehaus.org/browse/MNG-4946 y cuestiones relacionadas –

+0

@ KonstantinV.Salikhov - Gracias - una lectura interesante e informativa, aunque bastante dispersa. Espero ser capaz de juntar las partes y resolverlas para los casos más relevantes y responder por mi cuenta. Parece que todavía no hay una verdadera guía. En caso de que haya compilado algo sensible de los problemas ya listos, agradecería una respuesta;) – kostja

+3

Consejo: Use 'mvn help: effective-pom' – noahlz

Respuesta

3

no hay ninguna resolución de conflictos que suceden - solamente primordial. Afaik el orden es configuración, pom, y luego línea de comando. Para múltiples perfiles en un archivo pom y settings, el orden en el archivo importa también y más allá de que las cosas sean diferentes dependiendo de la versión de Maven.

Sugeriría encarecidamente que reduzca el uso de perfiles para que NO tenga que preocuparse por estas complejidades y sin duda tenga instalado el complemento de ayuda.

También puede ver el pom efectivo dentro de Eclipse en el plugin M2Eclipse en el editor POM. Eso debería ayudarte mientras tanto.

y contestar a sus preguntas:

Todos los pedidos son importantes y pueden dar lugar, digamos que los resultados "sorprendentes" a veces.

+0

Gracias por la aclaración, Manfred. Como suponía, a veces se reduce a la "prueba y ver" Enfoque: – kostja

+1

El problema es que intentas ver en una versión de Maven y funciona de manera diferente en otra. Intenta reducir el uso del perfil tanto como puedas. –

Cuestiones relacionadas