I do something simliar but I use two modules.  My very first module builds
various build related tools such as apt plugins.  Then subsequent modules
depend on that first module.

On Tue, Nov 2, 2010 at 7:25 AM, Stephen Connolly <
[email protected]> wrote:

> You are fighting the "Maven way"
>
> Drink the coolaid, split your "two phases" into two projects and you
> will actually end up with a cleaner project in the first place... and
> a simpler build process... and it will be doing what you want
>
> Maven is opinionated... you have hit a core opinion, either use
> something else or follow the opinion.
>
> I suggest you try following the opinion and see where that takes
> you... I believe you'll have a cleaner structure that is _easier for
> others to maintain after you have moved on to projects elsewhere_ as
> well as easy for you to maintain going forwards
>
> -Stephen
>
> P.S. Maven aims to make building software easier for everyone working
> on the project to maintain, not just the person who set up the build
> process initially... the easiest tools for setting up a build process
> are not necessariliy the best tools for maintaining a build when the
> original build engineer moves elsewhere
>
> On 2 November 2010 10:22, Leon Rosenberg <[email protected]> wrote:
> > Sorry, I was not able to answer to this message in the previous three
> days...
> >
> > If I understand your replies correctly, I cannot split the compile
> > phase into two with maven. This sounds pretty ... shitty ;-(
> >
> > regards
> > Leon
> >
> > On Fri, Oct 29, 2010 at 11:07 PM, Manfred Moser <[email protected]>
> wrote:
> >> You could move the code generator and the generated code out to a
> separate
> >> project. That will save you build time and solve your problem.
> >>
> >> manfred
> >>
> >>> Hi,
> >>>
> >>> I have following requirement. I have a project, in which I have one
> >>> source folder which contains a code generator (run with apt), another
> >>> source folder
> >>> which contains code, which is processed by the generator from folder
> >>> 1, and a third folder that relies on the code generated by the second
> >>> folder.
> >>> Therefor I need two compilation executions after each other, one for
> >>> the generator and one for the generated code.
> >>> Is this possible with maven?
> >>>
> >>> thanx in advance
> >>>
> >>> My pom file sofar:
> >>>
> >>> <project xmlns="http://maven.apache.org/POM/4.0.0";
> >>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
> >>> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
> >>> http://maven.apache.org/maven-v4_0_0.xsd";>
> >>>
> >>>   <parent>
> >>>       <groupId>net.anotheria</groupId>
> >>>       <artifactId>parent</artifactId>
> >>>       <version>1.1</version>
> >>>   </parent>
> >>>
> >>>   <modelVersion>4.0.0</modelVersion>
> >>>   <groupId>net.anotheria</groupId>
> >>>   <artifactId>distributeme</artifactId>
> >>>   <version>1.0.0-SNAPSHOT</version>
> >>>   <name>distributeme</name>
> >>>
> >>>   <build>
> >>>       <plugins>
> >>>                <plugin>
> >>>         <groupId>org.codehaus.mojo</groupId>
> >>>         <artifactId>build-helper-maven-plugin</artifactId>
> >>>         <executions>
> >>>           <execution>
> >>>             <id>add-source</id>
> >>>             <phase>generate-sources</phase>
> >>>             <goals>
> >>>               <goal>add-source</goal>
> >>>             </goals>
> >>>             <configuration>
> >>>               <sources>
> >>>                 <source>${project.basedir}/src/java</source>
> >>>                 <source>${project.basedir}/src/support</source>
> >>>                 <source>${project.basedir}/test/java</source>
> >>>               </sources>
> >>>             </configuration>
> >>>           </execution>
> >>>         </executions>
> >>>       </plugin>
> >>>       <plugin>
> >>>         <groupId>org.codehaus.mojo</groupId>
> >>>         <artifactId>apt-maven-plugin</artifactId>
> >>>         <version>1.0-alpha-3</version>
> >>>         <dependencies>
> >>>               <dependency>
> >>>                       <groupId>org.jfrog.maven.annomojo</groupId>
> >>>                       <artifactId>maven-plugin-tools-anno</artifactId>
> >>>                       <version>1.3.1</version>
> >>>                       <exclusions>
> >>>                               <exclusion>
> >>>                                       <groupId>com.sun</groupId>
> >>>                                       <artifactId>tools</artifactId>
> >>>                               </exclusion>
> >>>                       </exclusions>
> >>>               </dependency>
> >>>               <dependency>
> >>>                   <groupId>org.codehaus.mojo</groupId>
> >>>               <artifactId>cobertura-maven-plugin</artifactId>
> >>>               <version>${cobertura-plugin.version}</version>
> >>>               </dependency>
> >>>
> >>>         </dependencies>
> >>>       <executions>
> >>>         <execution>
> >>>             <id>process</id>
> >>>               <goals>
> >>>                  <goal>process</goal>
> >>>               </goals>
> >>>               <phase>generate-sources</phase>
> >>>               <configuration>
> >>>
> <factory>org.distributeme.processors.GeneratorProcessorFactory</factory>
> >>>                       <encoding>UTF-8</encoding>
> >>>                               <verbose>true</verbose>
> >>>
> <outputDirectory>${project.basedir}/generated/java</outputDirectory>
> >>>                       </configuration>
> >>>         </execution>
> >>>       </executions>
> >>>       </plugin>
> >>>     </plugins>
> >>>   </build>
> >>>
> >>>     <reporting>
> >>>       </reporting>
> >>>
> >>>   <dependencies>
> >>>       <dependency>
> >>>               <groupId>net.anotheria</groupId>
> >>>               <artifactId>ano-util</artifactId>
> >>>               <version>1.0.0</version>
> >>>       </dependency>
> >>>       <dependency>
> >>>               <groupId>net.anotheria</groupId>
> >>>               <artifactId>ano-net</artifactId>
> >>>               <version>1.0.0</version>
> >>>       </dependency>
> >>>       <dependency>
> >>>               <groupId>net.anotheria</groupId>
> >>>               <artifactId>ano-prise</artifactId>
> >>>               <version>1.0.2</version>
> >>>       </dependency>
> >>>       <dependency>
> >>>               <groupId>net.anotheria</groupId>
> >>>               <artifactId>configureme</artifactId>
> >>>               <version>1.0.0</version>
> >>>       </dependency>
> >>>       <dependency>
> >>>       <groupId>javax.servlet</groupId>
> >>>       <artifactId>servlet-api</artifactId>
> >>>       <version>2.5</version>
> >>>       <scope>provided</scope>
> >>>       </dependency>
> >>>       <dependency>
> >>>               <groupId>jdom</groupId>
> >>>               <artifactId>jdom</artifactId>
> >>>               <version>0.7</version>
> >>>       </dependency>
> >>>       <dependency>
> >>>               <groupId>com.sun</groupId>
> >>>               <artifactId>tools</artifactId>
> >>>               <version>1.6</version>
> >>>               <scope>provided</scope>
> >>>       </dependency>
> >>>
> >>>   </dependencies>
> >>>
> >>>
> >>>
> >>>       <scm>
> >>>               <url>svn:svn://
> svn.anotheria.net/opensource/distributeme/trunk</url>
> >>>               <connection>scm:svn:svn://
> svn.anotheria.net/opensource/distributeme/trunk</connection>
> >>>               <developerConnection>scm:svn:svn://
> svn.anotheria.net/opensource/distributeme/trunk</developerConnection>
> >>>       </scm>
> >>>
> >>> </project>
> >>>
> >>> ---------------------------------------------------------------------
> >>> To unsubscribe, e-mail: [email protected]
> >>> For additional commands, e-mail: [email protected]
> >>>
> >>
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: [email protected]
> >> For additional commands, e-mail: [email protected]
> >>
> >>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [email protected]
> > For additional commands, e-mail: [email protected]
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>

Reply via email to