You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@maven.apache.org by Perez Ronen <Ro...@comverse.com> on 2010/03/18 08:11:50 UTC

How to perform ordered tasks in Maven2 build

Hi,

I am trying to migrate a Java application built by Ant to Maven2. among other the build perform the following operations:

1) Running a javadoc doclet to find annotated Java files to be externalize later as web services
2) compile a small part of the code for step 3
3) run Axis java2wsdl on the compiled code from step 2
4) produce java code with wsdl2java on the wsdl files from step 3
5) compile the entire code

when trying to "mavenize" the process I can accomplish each task at a time but fail to achieve them all in that order.

to demonstrate my pom and not load you with details I'll show the following snippet:
<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>


I pinned all of the build executions on the generate-sources phase and as far as I know they should run in the order they are defined in the pom.

The main problem is that I have no control on the order of things and it is obviously important here as every step output is the next step input.

any suggestions?

Thanks, Ronen.

________________________________
"This e-mail message may contain confidential, commercial or privileged information that constitutes proprietary information of Comverse Technology or its subsidiaries. If you are not the intended recipient of this message, you are hereby notified that any review, use or distribution of this information is absolutely prohibited and we request that you delete all copies and contact us by e-mailing to: security@comverse.com. Thank You."

Re: How to perform ordered tasks in Maven2 build

Posted by Stephen Connolly <st...@gmail.com>.
On 18 March 2010 07:11, Perez Ronen <Ro...@comverse.com> wrote:

> Hi,
>
> I am trying to migrate a Java application built by Ant to Maven2. among
> other the build perform the following operations:
>
> 1) Running a javadoc doclet to find annotated Java files to be externalize
> later as web services
> 2) compile a small part of the code for step 3
> 3) run Axis java2wsdl on the compiled code from step 2
> 4) produce java code with wsdl2java on the wsdl files from step 3
> 5) compile the entire code
>

Steps 2-3/4 sound like they should be in a separate module.

If you move them to a separate module (or two) you can leave things like the
compiler plugin bound to the compile phase.

By trying to keep things as a single module you are fighting Maven.... and
that is not "the Maven Way"... you will have a much easier time if you give
in and put them in a separate module.

-Stephen


>
> when trying to "mavenize" the process I can accomplish each task at a time
> but fail to achieve them all in that order.
>
> to demonstrate my pom and not load you with details I'll show the following
> snippet:
> <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>
>
>
> I pinned all of the build executions on the generate-sources phase and as
> far as I know they should run in the order they are defined in the pom.
>
> The main problem is that I have no control on the order of things and it is
> obviously important here as every step output is the next step input.
>
> any suggestions?
>
> Thanks, Ronen.
>
> ________________________________
> "This e-mail message may contain confidential, commercial or privileged
> information that constitutes proprietary information of Comverse Technology
> or its subsidiaries. If you are not the intended recipient of this message,
> you are hereby notified that any review, use or distribution of this
> information is absolutely prohibited and we request that you delete all
> copies and contact us by e-mailing to: security@comverse.com. Thank You."
>

Re: How to perform ordered tasks in Maven2 build

Posted by Ron Wheeler <rw...@artifact-software.com>.
Perez Ronen wrote:
> Guys, I am trying to push Maven in my organization, so I am facing the reality of existing mega projects with mega chaos and the resistance of some zealous ant users. Do you have an operative suggestions?
>
>
>   
Unfortunately there is not a best practices guide.
I can give you a few pointers based on my experience running a small 
development group and listening to the traffic here.

1) Post some more details about the type of project you are building and 
a bit about the size and make up of your team. Any information that you 
can give about your workflow and QC policies will help.
2) Try not to fight Maven or bend it to your will. Maven embodies some 
unspoken set of best practices that are well supported and will make 
your life better if you conform to its will. OTOH, there seem to be a 
million plug-ins that encourages peole to do some odd things by making 
it possible and even easy.
3) Do you have a repository set up? I am a bit fan of Nexus but there 
are others that are frequently used. I wish that I had done that 2+ 
years ago. It adds a level of transapency and convenience to Maven that 
really helps. I just have the free one but if you have a bigger team 
with more complexity in your structure and workflow, you may get a lot 
of benefit out of their professional version.
4) You should take a look at the build structure to see how the 
project's dependencies are woven together. See how well the libraries 
are organized so that libraries can be constructed and tested without 
testing the whole mess.

Ant is a great tool but Maven makes your life easier once you get your 
shit together.

There are some really smart people in the forum and you can probably get 
some good advice and use cases to help move the ant-lovers to become 
maven fanatics.

If you follow my #1 piece of advice I am sure you will get some help.

Ron
Ron

> -----Original Message-----
> From: Ron Wheeler [mailto:rwheeler@artifact-software.com]
> Sent: ה 18 מרץ 2010 14:45
> To: Maven Users List
> Subject: Re: How to perform ordered tasks in Maven2 build
>
> Another "Best Practice" example about how to structure a project into
> Maven projects with libraries and dependencies to avoid the "Big Bang"
> theory of deployment.
>
> Ron
>
> Perez Ronen wrote:
>   
>> Hi,
>>
>> I am trying to migrate a Java application built by Ant to Maven2. among other the build perform the following operations:
>>
>> 1) Running a javadoc doclet to find annotated Java files to be externalize later as web services
>> 2) compile a small part of the code for step 3
>> 3) run Axis java2wsdl on the compiled code from step 2
>> 4) produce java code with wsdl2java on the wsdl files from step 3
>> 5) compile the entire code
>>
>> when trying to "mavenize" the process I can accomplish each task at a time but fail to achieve them all in that order.
>>
>> to demonstrate my pom and not load you with details I'll show the following snippet:
>> <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>
>>
>>
>> I pinned all of the build executions on the generate-sources phase and as far as I know they should run in the order they are defined in the pom.
>>
>> The main problem is that I have no control on the order of things and it is obviously important here as every step output is the next step input.
>>
>> any suggestions?
>>
>> Thanks, Ronen.
>>
>> ________________________________
>> "This e-mail message may contain confidential, commercial or privileged information that constitutes proprietary information of Comverse Technology or its subsidiaries. If you are not the intended recipient of this message, you are hereby notified that any review, use or distribution of this information is absolutely prohibited and we request that you delete all copies and contact us by e-mailing to: security@comverse.com. Thank You."
>>
>>
>>     
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>
> “This e-mail message may contain confidential, commercial or privileged information that constitutes proprietary information of Comverse Technology or its subsidiaries. If you are not the intended recipient of this message, you are hereby notified that any review, use or distribution of this information is absolutely prohibited and we request that you delete all copies and contact us by e-mailing to: security@comverse.com. Thank You.”
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>
>   


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: How to perform ordered tasks in Maven2 build

Posted by Justin Edelson <ju...@gmail.com>.
On 3/18/10 2:06 PM, Wayne Fay wrote:
> My personal opinion (and it is shared by many of the active people on
> this list) is that jumping in with your first Maven project as a "big
> Ant migration" is the worst possible way to get started with Maven and
> is nearly guaranteed to fail.
Just to echo this... it's actually two-fold:
1) As an organization, you should first use Maven on a greenfield project.
2) As a build architect (or whatever you want to call it), you should
first use Maven on a greenfield project.

Failing to do BOTH of these will result in failure. An experienced build
architect who has used Maven on a variety of projects MAY be able to do
#1, but it is very risky.

As an aside, a Best Practices Guide is a fine idea, but I don't see it
working as a community project.

Justin

> 
> Wayne
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: How to perform ordered tasks in Maven2 build

Posted by Wayne Fay <wa...@gmail.com>.
> I still didn’t get any technical answer about my question regarding
> the sporadic goals execution. Do you think Maven Dev forum will be
> more appropriate?

No, this is the right place for it.

> P.S, I really could use some help with the problem I raised.

Follow Subir's original advice and break this up into different
phases. Yes, the documentation says this should work, but obviously it
does not for you, for unknown reasons.

Wayne

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


RE: How to perform ordered tasks in Maven2 build

Posted by Perez Ronen <Ro...@comverse.com>.
Hi guys,

I still didn’t get any technical answer about my question regarding the sporadic goals execution. Do you think Maven Dev forum will be more appropriate?

Just to clarify on some points you were talking about:
1) I didn’t say that all Ant users are zealous, I just said that there are some zealous Ant users I am facing. And believe me, if you had known the you'll feel the same :)
2) I set up a Nexus server which serves about hundred users.
3) I am in a process of the implementation of Maven in my organization and I have a lot of success stories. Project that migrated easily (which in most cases are better by design as they are module oriented with simple approach). The hard part are the projects that has chaos from the beginning and my question is about such project.
4) I have a buy in from management but this is definitely not enough. Management can't force such migrations when development groups are chasing deadlines. In my experience, the success was always with those who embrace changes and not the one who fear it.

P.S, I really could use some help with the problem I raised.

Ronen.

-----Original Message-----
From: Gorham-Engard, Frank [mailto:Frank_Gorham-Engard@cable.comcast.com]
Sent: ו 19 מרץ 2010 15:13
To: Maven Users List
Subject: RE: How to perform ordered tasks in Maven2 build

Wayne
I apologize. I didn't mean to have to going all defensive on me.
Sure, everyone knows you are a major contributor here. I was just saying you could have done more to not perpetuate the 'name calling'.

The real question in my post still goes unanswered:
"Where is the evidence that me using Maven will make my customers happier?"

Information like this would be very useful to me and I expect to others.

<!-- Frank Gorham-Engard →
"It is a misnomer to label any practice 'a best practice';
  a practice is only best in the specific context in which it performs well."


-----Original Message-----
From: Wayne Fay [mailto:waynefay@gmail.com]
Sent: Thursday, March 18, 2010 5:46 PM
To: Maven Users List
Subject: Re: How to perform ordered tasks in Maven2 build

> Hey Wayne,
> We don't need to start name calling here.
> "zealous ant users"? Would that be someone who believes that their favorite tool must be best for everybody. Remind you of anyone?

Read the posts in this thread from Ronen Perez before making
assumptions about me calling anyone names... this is simply incorrect.

In the words of Benjamin Franklin "it is better to be thought a fool
than to open your mouth and remove all doubt."

Wayne

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


“This e-mail message may contain confidential, commercial or privileged information that constitutes proprietary information of Comverse Technology or its subsidiaries. If you are not the intended recipient of this message, you are hereby notified that any review, use or distribution of this information is absolutely prohibited and we request that you delete all copies and contact us by e-mailing to: security@comverse.com. Thank You.”

RE: How to perform ordered tasks in Maven2 build

Posted by "Gorham-Engard, Frank" <Fr...@cable.comcast.com>.
Wayne
I apologize. I didn't mean to have to going all defensive on me.
Sure, everyone knows you are a major contributor here. I was just saying you could have done more to not perpetuate the 'name calling'.

The real question in my post still goes unanswered:
"Where is the evidence that me using Maven will make my customers happier?"

Information like this would be very useful to me and I expect to others.

<!-- Frank Gorham-Engard →
"It is a misnomer to label any practice 'a best practice'; 
  a practice is only best in the specific context in which it performs well."


-----Original Message-----
From: Wayne Fay [mailto:waynefay@gmail.com] 
Sent: Thursday, March 18, 2010 5:46 PM
To: Maven Users List
Subject: Re: How to perform ordered tasks in Maven2 build

> Hey Wayne,
> We don't need to start name calling here.
> "zealous ant users"? Would that be someone who believes that their favorite tool must be best for everybody. Remind you of anyone?

Read the posts in this thread from Ronen Perez before making
assumptions about me calling anyone names... this is simply incorrect.

In the words of Benjamin Franklin "it is better to be thought a fool
than to open your mouth and remove all doubt."

Wayne

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: How to perform ordered tasks in Maven2 build

Posted by Wayne Fay <wa...@gmail.com>.
> Hey Wayne,
> We don't need to start name calling here.
> "zealous ant users"? Would that be someone who believes that their favorite tool must be best for everybody. Remind you of anyone?

Read the posts in this thread from Ronen Perez before making
assumptions about me calling anyone names... this is simply incorrect.

In the words of Benjamin Franklin "it is better to be thought a fool
than to open your mouth and remove all doubt."

Wayne

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


RE: How to perform ordered tasks in Maven2 build

Posted by "Gorham-Engard, Frank" <Fr...@cable.comcast.com>.
Hey Wayne,
We don't need to start name calling here.
"zealous ant users"? Would that be someone who believes that their favorite tool must be best for everybody. Remind you of anyone?
There are ant users and maven users. And there are zealous users and pragmatic users. You don't have to be a zealous user to believe that the tool you are using is working fine and it would be a lot of work to change. Instead of insisting that people change and complaining (or name calling) if they are reluctant, let's take the approach of trying to supply the information we believe that they are not aware of yet. You know, that information that if they knew it then they would definitely agree with us.
So what is it that these "zealous ant users" should know? I think maybe it is "Where is the evidence that me using Maven will make my customers happier?"

We've all heard of the latest greatest thing that would provide massive long term benefits if only we would accept the short term pain. Pascal, CASE tools, OOD, UML, giving up smoking, losing weight, etc.  Some people just want you to try everything they think is good. Other people are naturally resistant.

I told the engineers here that management had decided that we would have to change to Maven because it would look so good on everybody's resume.  It's odd to have management insisting that we change. After so many years complaining that management only looked at the short term goals, now it's management that is looking at the long term and the engineers still doubt that they know what they're doing. So, even management buy-in isn't the magic pill to success.

<!-- Frank Gorham-Engard →
"It is a misnomer to label any practice 'a best practice'; 
  a practice is only best in the specific context in which it performs well."

-----Original Message-----
From: Wayne Fay [mailto:waynefay@gmail.com] 
Sent: Thursday, March 18, 2010 2:28 PM
To: Maven Users List
Subject: Re: How to perform ordered tasks in Maven2 build

> It was key for us that it happened in a grass roots fashion.
>
> A meritocrocy approach, while slow, is generally the best way to
> get buy in. If you force it, everyone will hate it and not be very productive.

I agree 100% with the grassroots, meritocracy approach. But it sounded
like the OP in this thread has no real power to re-architect his
projects/builds and he is working with "zealous ant users".

We know that is the path to failure. So someone, somewhere needs to
give him this power -- ideally its the dev team(s) he is working with,
but it could also be the person they report to, depending on the
culture of the org and the norms in their locale (Asia vs Europe vs US
etc).

Wayne

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: How to perform ordered tasks in Maven2 build

Posted by Wayne Fay <wa...@gmail.com>.
> It was key for us that it happened in a grass roots fashion.
>
> A meritocrocy approach, while slow, is generally the best way to
> get buy in. If you force it, everyone will hate it and not be very productive.

I agree 100% with the grassroots, meritocracy approach. But it sounded
like the OP in this thread has no real power to re-architect his
projects/builds and he is working with "zealous ant users".

We know that is the path to failure. So someone, somewhere needs to
give him this power -- ideally its the dev team(s) he is working with,
but it could also be the person they report to, depending on the
culture of the org and the norms in their locale (Asia vs Europe vs US
etc).

Wayne

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


RE: How to perform ordered tasks in Maven2 build

Posted by "Thiessen, Todd (Todd)" <tt...@avaya.com>.
For the most part, I agree with Wayne's sentiment.

We did it in stages, and even now it isn't fully adopted. Like just about everyone else, before Maven we were using ant. A number of more agile projects which had more empowerment heard about Maven and just tried it on their projects. Some of these projects were fairly small and others were pretty large. The important part is that the developers decided to do it themselves and were thus committed to it. It worked well, and word began to spread amongst the grass roots of the development community.

It was key for us that it happened in a grass roots fashion. Wayne mentioned earlier that you should try and get higher level org buy in. But I don't think that really ever happens. The grass roots, or the pigs (for those that are familiar with scrum terminology) are the ones who start the change. Once you hit a certain critical mass, larger parts of the org start to follow suit.

A meritocrocy approach, while slow, is generally the best way to get buy in. If you force it, everyone will hate it and not be very productive. 

> -----Original Message-----
> From: Wayne Fay [mailto:waynefay@gmail.com] 
> Sent: Thursday, March 18, 2010 2:07 PM
> To: Maven Users List
> Subject: Re: How to perform ordered tasks in Maven2 build
> 
> > Can you provide examples of large organizations that made the move 
> > from Ant to Maven and were happy with the process and felt that the 
> > benefits outweighed the initial costs.
> 
> I can only speak for the companies that I work for, and Maven 
> has only been adopted in pockets, not broadly due to the way 
> my company is organized -- development is not under one 
> division/person. And we are not primarily a development shop.
> 
> I would expect that Sonatype could talk more broadly about 
> Maven's adoption at E*Trade, eBay, Overstock, Intuit, Qualcomm, etc.
> 
> My personal opinion (and it is shared by many of the active 
> people on this list) is that jumping in with your first Maven 
> project as a "big Ant migration" is the worst possible way to 
> get started with Maven and is nearly guaranteed to fail.
> 
> Wayne
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
> 
> 
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: How to perform ordered tasks in Maven2 build

Posted by Wayne Fay <wa...@gmail.com>.
> Can you provide examples of large organizations that made the move from Ant
> to Maven and were happy with the process and felt that the benefits
> outweighed the initial costs.

I can only speak for the companies that I work for, and Maven has only
been adopted in pockets, not broadly due to the way my company is
organized -- development is not under one division/person. And we are
not primarily a development shop.

I would expect that Sonatype could talk more broadly about Maven's
adoption at E*Trade, eBay, Overstock, Intuit, Qualcomm, etc.

My personal opinion (and it is shared by many of the active people on
this list) is that jumping in with your first Maven project as a "big
Ant migration" is the worst possible way to get started with Maven and
is nearly guaranteed to fail.

Wayne

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: How to perform ordered tasks in Maven2 build

Posted by Anders Hammar <an...@hammar.net>.
I believe there are some blog posts over at Soantype's blog about success
stories migrating to Maven. Have a look there!
http://blogs.sonatype.com

/Anders

On Thu, Mar 18, 2010 at 18:35, Ron Wheeler
<rw...@artifact-software.com>wrote:

> Wayne Fay wrote:
>
>> Guys, I am trying to push Maven in my organization, so I am facing
>>> the reality of existing mega projects with mega chaos and the
>>> resistance of some zealous ant users. Do you have an operative
>>> suggestions?
>>>
>>>
>>
>> It sounds like you would benefit from a mandate from someone higher up
>> that will gently require people to adopt Maven over some period of
>> time.
>>
>> In an org full of zealous ant users, you're fighting an uphill battle
>> without some support. At the least, you need to be able to re-organize
>> the projects to get them to conform to Maven's standards for where
>> source files should be and to split things up into modules where it
>> makes sense etc.
>>
>> Without a mandate or some power in general over the projects, this
>> will probably be yet another failed migration effort. I am less of a
>> fan of the "parallel non-disruptive" approach suggested by Curtis
>> because it is much harder to accomplish due to the excessive
>> configuration that is required, unless you can do all your work in one
>> big branch in SVN and then check it all in at once after it is
>> working. But that is going to be very disruptive, too.
>>
>> Wayne
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
>> For additional commands, e-mail: users-help@maven.apache.org
>>
>>
>>
>>
> Can you provide examples of large organizations that made the move from Ant
> to Maven and were happy with the process and felt that the benefits
> outweighed the initial costs.
>
> Ron
>
>
> Ron
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>

Re: How to perform ordered tasks in Maven2 build

Posted by Ron Wheeler <rw...@artifact-software.com>.
Wayne Fay wrote:
>> Guys, I am trying to push Maven in my organization, so I am facing
>> the reality of existing mega projects with mega chaos and the
>> resistance of some zealous ant users. Do you have an operative suggestions?
>>     
>
> It sounds like you would benefit from a mandate from someone higher up
> that will gently require people to adopt Maven over some period of
> time.
>
> In an org full of zealous ant users, you're fighting an uphill battle
> without some support. At the least, you need to be able to re-organize
> the projects to get them to conform to Maven's standards for where
> source files should be and to split things up into modules where it
> makes sense etc.
>
> Without a mandate or some power in general over the projects, this
> will probably be yet another failed migration effort. I am less of a
> fan of the "parallel non-disruptive" approach suggested by Curtis
> because it is much harder to accomplish due to the excessive
> configuration that is required, unless you can do all your work in one
> big branch in SVN and then check it all in at once after it is
> working. But that is going to be very disruptive, too.
>
> Wayne
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>
>   
Can you provide examples of large organizations that made the move from 
Ant to Maven and were happy with the process and felt that the benefits 
outweighed the initial costs.

Ron


Ron

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: How to perform ordered tasks in Maven2 build

Posted by Wayne Fay <wa...@gmail.com>.
> Guys, I am trying to push Maven in my organization, so I am facing
> the reality of existing mega projects with mega chaos and the
> resistance of some zealous ant users. Do you have an operative suggestions?

It sounds like you would benefit from a mandate from someone higher up
that will gently require people to adopt Maven over some period of
time.

In an org full of zealous ant users, you're fighting an uphill battle
without some support. At the least, you need to be able to re-organize
the projects to get them to conform to Maven's standards for where
source files should be and to split things up into modules where it
makes sense etc.

Without a mandate or some power in general over the projects, this
will probably be yet another failed migration effort. I am less of a
fan of the "parallel non-disruptive" approach suggested by Curtis
because it is much harder to accomplish due to the excessive
configuration that is required, unless you can do all your work in one
big branch in SVN and then check it all in at once after it is
working. But that is going to be very disruptive, too.

Wayne

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


RE: How to perform ordered tasks in Maven2 build

Posted by "Yanko, Curtis" <cu...@uhc.com>.
You can set up maven in paralell, non-disruptively. Once you have that, get site reports working and then ask the Ant guys to produce a bill-of-materials! 


===========================
Curtis Yanko
UHGIT
Computer Services - ADIS
Continuous Integration Service
https://ulink.uhc.com/groups/cis
w860.702.9059
m860.881.2050

-----Original Message-----
From: Perez Ronen [mailto:Ronen.Perez@comverse.com] 
Sent: Thursday, March 18, 2010 9:56 AM
To: 'Maven Users List'
Subject: RE: How to perform ordered tasks in Maven2 build

Guys, I am trying to push Maven in my organization, so I am facing the reality of existing mega projects with mega chaos and the resistance of some zealous ant users. Do you have an operative suggestions?


-----Original Message-----
From: Ron Wheeler [mailto:rwheeler@artifact-software.com]
Sent: ה 18 מרץ 2010 14:45
To: Maven Users List
Subject: Re: How to perform ordered tasks in Maven2 build

Another "Best Practice" example about how to structure a project into Maven projects with libraries and dependencies to avoid the "Big Bang"
theory of deployment.

Ron

Perez Ronen wrote:
> Hi,
>
> I am trying to migrate a Java application built by Ant to Maven2. among other the build perform the following operations:
>
> 1) Running a javadoc doclet to find annotated Java files to be 
> externalize later as web services
> 2) compile a small part of the code for step 3
> 3) run Axis java2wsdl on the compiled code from step 2
> 4) produce java code with wsdl2java on the wsdl files from step 3
> 5) compile the entire code
>
> when trying to "mavenize" the process I can accomplish each task at a time but fail to achieve them all in that order.
>
> to demonstrate my pom and not load you with details I'll show the following snippet:
> <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>
>
>
> I pinned all of the build executions on the generate-sources phase and as far as I know they should run in the order they are defined in the pom.
>
> The main problem is that I have no control on the order of things and it is obviously important here as every step output is the next step input.
>
> any suggestions?
>
> Thanks, Ronen.
>
> ________________________________
> "This e-mail message may contain confidential, commercial or privileged information that constitutes proprietary information of Comverse Technology or its subsidiaries. If you are not the intended recipient of this message, you are hereby notified that any review, use or distribution of this information is absolutely prohibited and we request that you delete all copies and contact us by e-mailing to: security@comverse.com. Thank You."
>
>



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


“This e-mail message may contain confidential, commercial or privileged information that constitutes proprietary information of Comverse Technology or its subsidiaries. If you are not the intended recipient of this message, you are hereby notified that any review, use or distribution of this information is absolutely prohibited and we request that you delete all copies and contact us by e-mailing to: security@comverse.com. Thank You.”

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


This e-mail, including attachments, may include confidential and/or
proprietary information, and may be used only by the person or entity
to which it is addressed. If the reader of this e-mail is not the intended
recipient or his or her authorized agent, the reader is hereby notified
that any dissemination, distribution or copying of this e-mail is
prohibited. If you have received this e-mail in error, please notify the
sender by replying to this message and delete this e-mail immediately.

RE: How to perform ordered tasks in Maven2 build

Posted by Perez Ronen <Ro...@comverse.com>.
Guys, I am trying to push Maven in my organization, so I am facing the reality of existing mega projects with mega chaos and the resistance of some zealous ant users. Do you have an operative suggestions?


-----Original Message-----
From: Ron Wheeler [mailto:rwheeler@artifact-software.com]
Sent: ה 18 מרץ 2010 14:45
To: Maven Users List
Subject: Re: How to perform ordered tasks in Maven2 build

Another "Best Practice" example about how to structure a project into
Maven projects with libraries and dependencies to avoid the "Big Bang"
theory of deployment.

Ron

Perez Ronen wrote:
> Hi,
>
> I am trying to migrate a Java application built by Ant to Maven2. among other the build perform the following operations:
>
> 1) Running a javadoc doclet to find annotated Java files to be externalize later as web services
> 2) compile a small part of the code for step 3
> 3) run Axis java2wsdl on the compiled code from step 2
> 4) produce java code with wsdl2java on the wsdl files from step 3
> 5) compile the entire code
>
> when trying to "mavenize" the process I can accomplish each task at a time but fail to achieve them all in that order.
>
> to demonstrate my pom and not load you with details I'll show the following snippet:
> <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>
>
>
> I pinned all of the build executions on the generate-sources phase and as far as I know they should run in the order they are defined in the pom.
>
> The main problem is that I have no control on the order of things and it is obviously important here as every step output is the next step input.
>
> any suggestions?
>
> Thanks, Ronen.
>
> ________________________________
> "This e-mail message may contain confidential, commercial or privileged information that constitutes proprietary information of Comverse Technology or its subsidiaries. If you are not the intended recipient of this message, you are hereby notified that any review, use or distribution of this information is absolutely prohibited and we request that you delete all copies and contact us by e-mailing to: security@comverse.com. Thank You."
>
>



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


“This e-mail message may contain confidential, commercial or privileged information that constitutes proprietary information of Comverse Technology or its subsidiaries. If you are not the intended recipient of this message, you are hereby notified that any review, use or distribution of this information is absolutely prohibited and we request that you delete all copies and contact us by e-mailing to: security@comverse.com. Thank You.”

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: How to perform ordered tasks in Maven2 build

Posted by Ron Wheeler <rw...@artifact-software.com>.
Another "Best Practice" example about how to structure a project into 
Maven projects with libraries and dependencies to avoid the "Big Bang" 
theory of deployment.

Ron

Perez Ronen wrote:
> Hi,
>
> I am trying to migrate a Java application built by Ant to Maven2. among other the build perform the following operations:
>
> 1) Running a javadoc doclet to find annotated Java files to be externalize later as web services
> 2) compile a small part of the code for step 3
> 3) run Axis java2wsdl on the compiled code from step 2
> 4) produce java code with wsdl2java on the wsdl files from step 3
> 5) compile the entire code
>
> when trying to "mavenize" the process I can accomplish each task at a time but fail to achieve them all in that order.
>
> to demonstrate my pom and not load you with details I'll show the following snippet:
> <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>
>
>
> I pinned all of the build executions on the generate-sources phase and as far as I know they should run in the order they are defined in the pom.
>
> The main problem is that I have no control on the order of things and it is obviously important here as every step output is the next step input.
>
> any suggestions?
>
> Thanks, Ronen.
>
> ________________________________
> "This e-mail message may contain confidential, commercial or privileged information that constitutes proprietary information of Comverse Technology or its subsidiaries. If you are not the intended recipient of this message, you are hereby notified that any review, use or distribution of this information is absolutely prohibited and we request that you delete all copies and contact us by e-mailing to: security@comverse.com. Thank You."
>
>   



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: How to perform ordered tasks in Maven2 build

Posted by lukewpatterson <lu...@gmail.com>.

rperez wrote:
> 
> ... I can accomplish each task at a time but fail to achieve them all in
> that order.
> 

It is unfortunate that one can't compose the build section of the pom to
reflect the actual order the goals will be executed.  It's not uncommon that
one goal will create the input for the next.

Maybe you could redeploy the plugins you want to use under custom GAVs so
you can reuse them in the build section.  Yes I know that's a horrible idea.
-- 
View this message in context: http://old.nabble.com/How-to-perform-ordered-tasks-in-Maven2-build-tp27942368p27951030.html
Sent from the Maven - Users mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


RE: How to perform ordered tasks in Maven2 build

Posted by Perez Ronen <Ro...@comverse.com>.
>From Maven documentation: http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html
It says:

a build phase can also have zero or more goals bound to it. If a build phase has no goals bound to it, that build phase will not execute. But if it has one or more goals bound to it, it will execute all those goals (Note: In Maven 2.0.5 and above, multiple goals bound to a phase are executed in the same order as they are declared in the POM, however multiple instances of the same plugin are not supported. Multiple instances of the same plugin are grouped to execute together and ordered in Maven 2.0.11 and above).

Ronen

-----Original Message-----
From: subir.sasikumar@wipro.com [mailto:subir.sasikumar@wipro.com]
Sent: ה 18 מרץ 2010 14:18
To: users@maven.apache.org
Subject: RE: How to perform ordered tasks in Maven2 build

Have different executions in different phases to ensure the order.
In the same phase you cannot gaurantee any order AFAIK.

Subir

-----Original Message-----
From: Perez Ronen [mailto:Ronen.Perez@comverse.com]
Sent: Thursday, March 18, 2010 12:42 PM
To: Maven Users List
Subject: How to perform ordered tasks in Maven2 build

Hi,

I am trying to migrate a Java application built by Ant to Maven2. among
other the build perform the following operations:

1) Running a javadoc doclet to find annotated Java files to be
externalize later as web services
2) compile a small part of the code for step 3
3) run Axis java2wsdl on the compiled code from step 2
4) produce java code with wsdl2java on the wsdl files from step 3
5) compile the entire code

when trying to "mavenize" the process I can accomplish each task at a
time but fail to achieve them all in that order.

to demonstrate my pom and not load you with details I'll show the
following snippet:
<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>


I pinned all of the build executions on the generate-sources phase and
as far as I know they should run in the order they are defined in the
pom.

The main problem is that I have no control on the order of things and it
is obviously important here as every step output is the next step input.

any suggestions?

Thanks, Ronen.

________________________________
"This e-mail message may contain confidential, commercial or privileged
information that constitutes proprietary information of Comverse
Technology or its subsidiaries. If you are not the intended recipient of
this message, you are hereby notified that any review, use or
distribution of this information is absolutely prohibited and we request
that you delete all copies and contact us by e-mailing to:
security@comverse.com. Thank You."

Please do not print this email unless it is absolutely necessary.

The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy all copies of this message and any attachments.

WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email.

www.wipro.com

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


“This e-mail message may contain confidential, commercial or privileged information that constitutes proprietary information of Comverse Technology or its subsidiaries. If you are not the intended recipient of this message, you are hereby notified that any review, use or distribution of this information is absolutely prohibited and we request that you delete all copies and contact us by e-mailing to: security@comverse.com. Thank You.”

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


RE: How to perform ordered tasks in Maven2 build

Posted by su...@wipro.com.
Have different executions in different phases to ensure the order.
In the same phase you cannot gaurantee any order AFAIK.

Subir 

-----Original Message-----
From: Perez Ronen [mailto:Ronen.Perez@comverse.com] 
Sent: Thursday, March 18, 2010 12:42 PM
To: Maven Users List
Subject: How to perform ordered tasks in Maven2 build

Hi,

I am trying to migrate a Java application built by Ant to Maven2. among
other the build perform the following operations:

1) Running a javadoc doclet to find annotated Java files to be
externalize later as web services
2) compile a small part of the code for step 3
3) run Axis java2wsdl on the compiled code from step 2
4) produce java code with wsdl2java on the wsdl files from step 3
5) compile the entire code

when trying to "mavenize" the process I can accomplish each task at a
time but fail to achieve them all in that order.

to demonstrate my pom and not load you with details I'll show the
following snippet:
<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>


I pinned all of the build executions on the generate-sources phase and
as far as I know they should run in the order they are defined in the
pom.

The main problem is that I have no control on the order of things and it
is obviously important here as every step output is the next step input.

any suggestions?

Thanks, Ronen.

________________________________
"This e-mail message may contain confidential, commercial or privileged
information that constitutes proprietary information of Comverse
Technology or its subsidiaries. If you are not the intended recipient of
this message, you are hereby notified that any review, use or
distribution of this information is absolutely prohibited and we request
that you delete all copies and contact us by e-mailing to:
security@comverse.com. Thank You."

Please do not print this email unless it is absolutely necessary. 

The information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy all copies of this message and any attachments. 

WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email. 

www.wipro.com

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org