Sto provando a migrare un'applicazione Java creata da Ant a Maven2. Tra l'altro la costruzione eseguire le seguenti operazioni:Come eseguire le attività ordinate in Maven2 build
1) Esecuzione di un doclet javadoc per trovare i file Java annotate essere esternare in seguito come servizi Web
2) compilare una piccola parte del codice per il punto 3
3) run Axis Java2WSDL sul codice compilato dal passaggio 2
4) produrre codice Java con WSDL2Java sui file WSDL dal punto 3
5) compilare l'intero codice
Quando si cerca di "mavenize" il processo che può compiere ogni attività alla volta, ma non riescono a raggiungerli tutti in questo ordine.
Per dimostrare il mio pom e non caricare con i dettagli vi farò vedere il seguente frammento:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.6.1</version>
<executions>
<execution>
<id>aggregate</id>
<phase>generate-sources</phase>
<goals>
<goal>aggregate</goal>
</goals>
<configuration>...</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.1</version>
<executions>
<execution>
<id>compileWSfiles</id>
<goals>
<goal>compile</goal>
</goals>
<phase>generate-sources</phase>
<configuration>
<includes>
<!-- include 3 source files -->
</includes>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>axistools-maven-plugin</artifactId>
<version>1.3</version>
<dependencies>
<dependency>
<groupId>axis</groupId>
<artifactId>axis</artifactId>
<version>1.3</version>
</dependency>
</dependencies>
<executions>
<execution>
<id>java2wsdl</id>
<phase>generate-sources</phase>
<goals>
<goal>java2wsdl</goal>
</goals>
<configuration>...</configuration>
</execution>
<execution>
<id>wsdl2java</id>
<phase>generate-sources</phase>
<goals>
<goal>wsdl2java</goal>
</goals>
<configuration>...</configuration>
</execution>
</executions>
</plugin>
</plugins>
Il problema principale è che non ho alcun controllo su l'ordine delle cose ed è ovviamente importante qui dato che ogni uscita step è l'input successivo.
Grazie. scrivere il mio plugin che esegua le operazioni di cui sopra è una possibile soluzione: posso creare un plugin con un obiettivo che esegua altri obiettivi di plugin? – rperez
@rperez Non sono sicuro (vedi http://www.mail-archive.com/ [email protected]/msg104478.html). Non l'ho mai provato in realtà. –