2010-03-16 14 views
15

Stavo cercando di capire come sono definiti i mixin in Maven 3, ma non ho trovato altro che ronzio. È propagato come una delle nuove grandi funzionalità here e here. Attualmente sento il dolore della struttura gerarchica e vorrei dargli un giro. Qualcuno ha un puntatore alla documentazione o l'origine che definisce anche la sintassi?Come utilizzare i mixin di Maven 3?

risposta

14

In un commento a this answer, Brett Porter ha scritto:

Maven 3.0 non offre mixins ancora, tuttavia. - Brett Porter 16 febbraio alle 8:18

E AFAIK, i mixins non ci sono ancora.

+3

Ho anche chiesto su twitter e ottenuto la stessa risposta da Jason van Zyl. Sembra che arriverà in Maven 3.1. Vedi: http://twitter.com/jvanzyl/status/10601935842 –

+0

@Mirko Grazie per il feedback! –

+2

Vedere la discussione: https://jira.codehaus.org/browse/MNG-5102 –

3

Jesse Glick ha indicato il numero 5102 di Maven, quindi volevo solo menzionare che il commento più recente (2 ott 2012) collega a un nuovo plug-in di maven che offre il comportamento di mixin: maven-tiles. Questa sembra essere l'opzione migliore fino a quando il mixin support non viene effettivamente inserito in Maven (qualcosa che è stato posticipato per diversi anni).

Modifica 2015-gen: tknerr ha sottolineato che questo problema è stato contrassegnato per revisione per l'inclusione di Maven 4. Gli sviluppatori Maven sembrano credere che le modifiche al formato POM siano necessarie per supportare correttamente questa funzione. (Come utente di lunga data di Maven, non ne sono affatto sorpreso.)

+1

MNG-5102 attualmente dice: "Fix versione/s: problemi da rivedere per 4.x". Quindi non è ancora in 3.x e probabilmente non lo farà mai lì ... –

0

Attualmente i mixin sono programmati per Maven 3.2 come bug MNG-5102. Sono tra i molti bug altamente votati che non sono stati affrontati nel candidato Maven 3.1.

Così tanto per "Pavimentazione delle linee di desiderio".

1

È possibile utilizzare plug-in open source per introdurre mixin nel proprio pom.

Ci sono diversi plugin che affrontano la complessità della gerarchia in forma di mixin. Uno di questi è progettato per risolvere la gerarchia nella sezione di gestione plugin/plugin.

Legge tutti i file POM importati e li unisce al file POM nello stesso modo in cui Maven calcola l'effettivo pom. Il plugin unisce solo le sezioni build, properties e profiles e non unisce nessun altro elemento del pom, come dipendenze, repository, ecc ...

Nel frammento di seguito, il campione-mixin artefatto utilizzerà la configurazione di gestione del plugin come definito nel file sample-mixin pom. Non c'è bisogno di ereditare i pom genitore/base per questo ..

<plugin> 
 
    <groupId>com.github.odavid.maven.plugins</groupId> 
 
    <artifactId>mixin-maven-plugin</artifactId> 
 
    <version>0.1-alpha-23</version> 
 
    <extensions>true</extensions> 
 
    <configuration> 
 
    <mixins> 
 
     <mixin> 
 
     <groupId>mixin-example</groupId> 
 
     <artifactId>sample-mixin</artifactId> 
 
     <version>${project.version}</version> 
 
     </mixin> 
 
    </mixins> 
 
    </configuration> 
 
</plugin>

Per ulteriori letture, check it out: http://rethinkingswd.blogspot.co.il/2014/09/mixin-maven-plugin-reusable-project.html

Problemi correlati