Re: Refactoring the Maven Build

2010-03-09 Thread Bob Aiello

Hi Jesse (and everyone),

you are more than welcome to not go so easy on me. I am a hands-on 
process improvement guy with many years of experience as a build 
engineer and release manager. I am also the Editor in Chief at CM 
Crossroads (www.cmcrossroads.com) where I write about topics related to 
configuration management including build engineering. I have worked with 
Ant, Make/GNU Make and MS Build along with Maven 1.0.2 and Maven 2.


I have been struggling to get my arms around Maven for some time now and 
wanted to make a concerted effort to get past my learning curve because 
it has become increasingly clear that Maven is the build tool of choice 
for Java applications. In my work, I have been asked several times to 
review existing Maven builds that had the problems that I described in 
the article. I did not create these problems. They were created by 
software developers who were, as you say, "a higher caliber maven user" 
than I am today.


I appreciate your comments which I am reviewing and I am glad to 
refactor my article on "Refactoring the Maven build", but I suspect that 
I am not the only person struggling to get up to speed with maven. 
Perhaps I am a little more daring because I am willing to publicly start 
the conversation. I would also suggest that Maven is tough for many 
people to master and it could be argued that we, as a community, could 
do a better job explaining the concepts and spreading the knowledge. I 
would like to be part of that effort.


So I will challenge you Jesse (and others) to share what you know (as 
you obviously do on this list) and also to help mentor the rest of us 
along. I will do my best to come up to speed as well and I can probably 
add some value by helping others along with their learning curve too. 
What other resources are there available for newbies to learn how to use 
Maven? I know of the PDF that we can all download and books published by 
O'Reilly and Packt. I have written a number of articles on Maven and 
will write lots more (which you are absolutely welcome to critique).

http://www.cmcrossroads.com/cm-basics/13111-the-maven-super-pom
http://www.cmcrossroads.com/cm-basics/13070-getting-started-with-maven
http://www.cmcrossroads.com/cm-basics/11656-a-little-more-maven-102
http://www.cmcrossroads.com/cm-basics/10379-maven-102-the-walk-down-memory-lane-you-may-very-well-need 



Feel free to send me your articles and I will get them published (that 
includes articles from other beginners who climbing the stairs with me).


I will always be delighted incorporate feedback and suggestions as I try 
to be the best that I can be.


regards,

Bob
http://www.linkedin.com/in/BobAiello
__

On 3/8/2010 9:39 AM, Jesse Farinacci wrote:

Hi Bob,

On Mon, Mar 8, 2010 at 8:09 AM, Bob Aiello  wrote:
   

I just wrote an article on tactics for refactoring the Maven build and I
would love to get your input.
http://www.cmcrossroads.com/cm-basics/13317-refactoring-the-maven-build

Feel free to post comments or send them to me privately.

Bob Aiello
Editor in Chief
CM Crossroads
http://www.linkedin.com/in/BobAiello
raiello [at] acm.org

 

Well, you seem to be a manager and not a technical developer, so I'll
go easy on you. Your article is definitely filled with the right buzz
words, they just don't seem to be used appropriately. The title,
Refactoring the Maven Build, suggests that there will be some sort of
detail provided on how to refactor the Maven pom.xml, but there aren't
any details on this at all.

Tip # 1 - Using help:effective-pom to diagnose problems is good
Tip # 2 - Understanding what is going on in the build is generically useful
Tip # 3 - Adding tracing to Maven itself isn't going to be useful to
any reader unless you provide your changes, please do not
Tip # 4 - Declaring dependencies in a clear and consistent way? What
does this even mean? Being a correct, well-formed XML document will
see to that..
Tip # 5 - There's so much wrong in this one I don't know where to
start ... please just delete it
Tip # 6 - This is the likely result of your misunderstanding Maven,
and switching the packaging type from jar to war without ever cleaning
out the .m2/repo and/or without changing the artifact's version -
tsk-tsk on you!
Tip # 7 - Anyone that has written a plugin for Maven, even a
HelloWorldMojo, is going to be of a higher caliber Maven user than
you.. telling them to 'optimize' their plugins isn't at all valuable
or useful
Tip # 8 - Here, you seem to have digressed from the original thesis;
are you speaking about a Maven Repository Manager? It's unclear, and
worse still, you provide no details about what you're trying to fix,
or how you recommend fixing it
Tip # 9 - This is a non-issue if you are using well defined best
practices for software development - by this I mean using actual
versio

Maven/Nexus/SVN Consulting gig in NJ!

2010-03-08 Thread Bob Aiello

Hi everyone,

I am posting this for a colleague of mine who has an interesting gig in NJ.

__

*Maven/Nexus/Subversion Implementation Specialist*

*Short-term Consulting -- initial phase is 1 week *

* *

*Overview:*

Client is in the process of replacing their current version control tool 
(PVCS) with Collabnet's Subversion tool.  The development organization 
is a multi-platform shop performing JAVA and Websphere development.  
They are looking to integrate the use of Maven and Nexus as part of this 
conversion to improve the control, quality and efficiency of their 
software build process while utilizing RAD as the IDE platform.


Currently the development team is performing this work as an additional 
assignment to their day job. They have completed much integration but 
are having integration and optimization issues with Maven and Nexus with 
RAD.  They would like CMI to assist them in completing the integration 
of these tools for this "Pilot" project.


We are in the process of identifying a consultant to help us meet the 
Maven / Nexus integration SME needs of this client engagement.  We are 
in the early stages of assisting in the customization / optimization of 
Maven and Nexus within our client's RAD IDE. Their source code control 
tool is Subversion and they are also using Hudson for continuous 
builds. I'd classify the current need as "assessment and recommendation" 
- We' re anticipating getting the longer-term work that is available 
behind this, as an off-shoot of this initial phase.  The candidate will 
accompany and report to other CMI staff.


*Responsibilities:*

Ø Identify the software build impacts to moving to the new tools 
including Subversion, Maven and Nexus.


Ø Assist with the integration and optimization of Subversion, Maven and 
Nexus to support the UBS software build environment.


*Required knowledge and experience:*

Most Important:

Maven/Nexus

Collabnet's Subversion (Administrative skills)

Also Beneficial:

Java and Websphere Software Development

RAD IDE

Additional knowledge as a bonus:

Collabnet's TeamForge

Hudson

*Contact:*

Oliver Eaton

Recruiting Manager CMI

oliver.ea...@cmi.com

732-450-1100 ext. 114

* *

* *

*Additional Notes:*

The initial pilot is to get one development group up and operational on 
the new tool infrastructure.  That would include Subversion as the 
version control repository and Maven and Nexus as supporting build 
tools.  The next phase of the pilot would consider the use of TeamForge 
(they have a trial license) and Hudson for support of continuous 
integration.  The two biggest issues they are facing are implementing 
the necessary controls to ensure integrity without burdening the 
developer with new process requirements (we had much discussion with 
client on this and Best Practices are going to have to be compromised 
initially to get this project off the ground) and configuring Maven, 
Lexus and SVN to a lesser to degree to do want they need to have done.  
In the meeting we discussed the issue of developers delivering "JAR" 
files to the build environment and stated that could be controlled 
through SVN and the issue of developers including links to software 
outside the controlled environment and stated that could be controlled 
by limiting the allowable IP addresses for file access.


Another key point is the development team doing this project as a 
sanctioned "skunk works".  As a result the current team that does CM has 
not been including in this project.  We need to make sure the solution 
supports both the development team and the corporate CM team.




Refactoring the Maven Build

2010-03-08 Thread Bob Aiello

Hi everyone,

I just wrote an article on tactics for refactoring the Maven build and I 
would love to get your input.

http://www.cmcrossroads.com/cm-basics/13317-refactoring-the-maven-build

Feel free to post comments or send them to me privately.

Bob Aiello
Editor in Chief
CM Crossroads
http://www.linkedin.com/in/BobAiello
raiello [at] acm.org

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



Articles for CM Crossroads

2009-08-24 Thread Bob Aiello

Hi Everyone,

I am looking for people who are interested in sharing best practices
for using Ant, Maven and Make. The articles will appear in CM Basics
(www.cmcrossroads.com).

We have 60,000+ readers with lots of existing articles and forums on
build engineering.

Please contact me directly if you are interesting in submitting an article!

Bob Aiello
raie...@acm.org
Editor in Chief
CM Crossroads
http://www.linkedin.com/in/BobAiello



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



Articles for CM Crossroads

2009-05-27 Thread Bob Aiello
Hi everyone, 

the June of CM Crossroads (www.cmcrossroads.com) is on 
"Evaluating and Selecting Right Tools". If you are interested in 
participating then I need a draft of your article by June 10th 
(publication date is June 17th).


Articles are usually around 1200 - 1500 words and I provide
editing support (e.g. grammer, spelling, word usage). 


Oh and I am always looking for short articles on Ant, Maven,
GNU Make and MSBuild etc.

Bob Aiello
Editor in Chief 
CM Crossroads

raie...@acm.org

http://www.linkedin.com/in/BobAiello


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



Re: Senior Release Engineer Opportunity in Boston

2009-03-30 Thread Bob Aiello
What is the salary/rate?
bob.aie...@ieee.org - http://www.linkedin.com/in/BobAiello - 
Sent via BlackBerry

-Original Message-
From: durgaK 

Date: Mon, 30 Mar 2009 11:49:04 
To: 
Subject: Senior Release Engineer Opportunity in Boston



Seek individual with strong skills in  Subversion, Maven, J2EE, Weblogic,
Builds & Releases for Release Engineer position with an established and
growing software service company.

Responsibilities: 
•   Build various versions of the application (Maven) and deploy to
development environments 
•   Maintain the source code and related content in Subversion 
•   Maintain and enhance build scripts 
•   Plan and automate the release process 
•   Provide support to the development team for Configuration Management and
Build issues 
•   Ability to learn new tools as well as think and lead independently 
Qualifications:
•   7+ years experience with build and release engineering with at least 3
years in Java/J2EE 
•   Worked in a web based J2EE environment 
•   Excellent knowledge of Java/J2EE 
•   Good knowledge of BEA Weblogic 
•   Good grasp of a scripting language like Perl 
•   Good understanding of Solaris/Unix and Windows OS 
•   Knowledge of Continuum, Jira and Ant a big plus 
•   Knowledge of Oracle/SQL Server/MYSQL a plus 
•   Prior experience developing Java/J2EE applications a plus 

Please send a Word resume when you contact me! No work authorization (visa)
support can be provided.

Thanks,
Durga Kotikalapudi
Recruiter, CMI
durga.kotikalap...@cmi.com
-- 
View this message in context: 
http://www.nabble.com/Senior-Release-Engineer-Opportunity-in-Boston-tp22790247p22790247.html
Sent from the Maven - Users mailing list archive at Nabble.com.


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



Re: Maven vs. Hudson

2009-03-18 Thread Bob Aiello
The comparison would be better if you said Hudson vs CruseControl or Maven vs 
Ant
--Original Message--
From: Łukasz Warchoł
To: users@maven.apache.org
ReplyTo: Maven Users List
Sent: Mar 18, 2009 6:50 AM
Subject: Maven vs. Hudson

Hello,
Can anybody tell me what are de differences between Maven and Hudson?
Thanks in advance,
Luke



bob.aie...@ieee.org - http://www.linkedin.com/in/BobAiello - 
Sent via BlackBerry

Re: Best practice? Where to put app-server specific files (log4j.xml, datsource xml files, jboss-service.xml , etc.)

2008-10-06 Thread Bob Aiello
I believe that most people use the Ant plugin Assembly to parse the dev, qa, 
prod
environment files. I would suggest that you create them all during the 
build. I have
seen some people put in the environment during the build and parse the files 
just for
that environment. This meant that they had to rebuild for dev, QA and Prod 
(very

bad practice!). From a compliance point of view you do want your QA build
to be the same as the build that you promote into production (obviously you
have a deployment script to change over the environment files).

What does everyone else do?

Bob Aiello
Editor in Chief
CM Crossroads
www.cmcrossroads.com
http://www.linkedin.com/in/BobAiello


- Original Message - 
From: "Rick" <[EMAIL PROTECTED]>

To: "Maven Users List" 
Sent: Monday, October 06, 2008 6:25 PM
Subject: Best practice? Where to put app-server specific files (log4j.xml, 
datsource xml files, jboss-service.xml , etc.)




I'm working on a typical JEE application that will be deployed to JBoss.
(JBoss5 if it matters.) Things are going. I have a pretty standard setup:

Parent Module
EJB-JAR Module
JAR Module
WEB Module
EAR Module


Currently, however, I'm manually having to deal with certain files that I
need in JBoss:
*  datasource.xml files
*  jboss-service.xml
*  log4j.xml files
There will probably be some others as well.

What is the best way to deal with these files? Is the best practice to
create a directory in the parent module or ear module and just create some
custom ant task to move them around where they need to go? I couldn't find
much about a jboss maven plugin to help with these tasks, so I'm assuming
hooking in regular old ant is the way to go?

I'll also want to have certain variables in those files replaced with
variables from a profile (dev, test, prod) depending on what profile I'm
running. I'll look into that as well, since I'm sure there are some docs 
on

it, but are the any issues to be aware of since I'm guessing these aren't
standard files  that I'm dealing with so is using the replacement 
mechanism

more difficult?

Thanks




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



setting the version number in Maven

2007-10-10 Thread Bob Aiello

Hi,

What is the easiest way to set a version in the pom.xml ?

I have a maven app that has 30 poms and in order to update 
the version, I have to modify each of these poms manually.
 
1.1.0

I would like to be able to separate out the version
So that I can just change it in one place and the 30 
poms will pick up the change. I keep thinking that I 
should be able to have something like...

${myversion}

And a properties file somewhere in which I set the version.

Any suggestions on a simply way to do this would be 
greatly appreciated!!!

Bob Aiello
[EMAIL PROTECTED]


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Why Maven is Hard?

2007-09-24 Thread Bob Aiello
One of Maven's values is that it 
"does the heavy lifting for you".
(as it's literature describes.)

But that is also exactly the problem - because
it is sometimes hard to tell what is going
on. You need to keep the Maven cycle in 
mind at all times - and that does add
another level of indirection. 

As a build engineer I am often getting complicated 
Maven poms from developers and then I gotta
decipher what is happening. 

With Ant - it's a lot more transparent.
I am not criticizing maven (then we'd be talking
about the painful bugs), but I do think that 
it is fair to say that it is harder to understand
what is happening...


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: Does maven work with Cygwin? Please help!

2007-08-02 Thread Bob Aiello
 
I have run it under cygwin - although actually I did build it locally 
first. There were some tweaks necessary.

Bob 
raiello  at acm.org
-Original Message-
From: Alex Worden [mailto:[EMAIL PROTECTED] 
Sent: Thursday, August 02, 2007 6:34 PM
To: users@maven.apache.org
Subject: Does maven work with Cygwin? Please help!

Hi,

I've just installed the latest Cygwin and maven 2.0.6

When I open a cygwin window and attempt to execute maven --version I get
the
following:

bash-3.2$ mvn --version
bash: /cygdrive/c/bin/maven-2.0.6/bin/mvn: /bin/sh: bad interpreter: No
such file or directory

Also - please reply directly to me as I am not subscribed to this
mailing list (and I don't want to be subscribed to it!). I cannot
believe you guys don't have a searchable user forum on your website!

Thanks for the help,

Alex



-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



permissions on a file after assemby...

2007-08-01 Thread Bob Aiello
I have a file that ends up being created with some 
permissions that are not what I expected. Is this 
a (known) maven bug or does anyone have a suggestion 
on how I can debug this.

>ls -lt
total 4
---x-wx---  1 user user 125 Aug  1  2007 myfile.xml


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



RE: looking for users of AccuRev and/or QuickBuild

2007-06-25 Thread Bob Aiello
I am writing a review of Accurev for CM Crossroads and I am looking into the 
integrations. (I also use Ant/Maven daily). Please include me...

 -Original Message-
From:   Tim Foster [mailto:[EMAIL PROTECTED]
Sent:   Monday, June 25, 2007 11:59 AM Eastern Standard Time
To: Maven Users List
Subject:looking for users of AccuRev and/or QuickBuild

I'm looking for any Maven users who use AccuRev for source control
and/or QuickBuild for build management who would like to compare notes.
Please reply directly to me.

Tim
mailto:[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]



RE: setting Maven on Linux

2007-05-15 Thread Bob Aiello
What is listening on 8080?
Is this tomcat or something maven puts out there?
If it is tomcat - is there a specific way to configure it?

-Original Message-
From: Antonio Petrelli [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, May 15, 2007 2:52 PM
To: Maven Users List
Subject: Re: setting Maven on Linux

2007/5/15, Bob Aiello <[EMAIL PROTECTED]>:
> Is this what you mean?

No, this:



   
  true
  http
  your.proxy.host
  8080
  localhost|127.0.0.1

  


Antonio

-
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]



tomcat/apache setup...

2007-05-15 Thread Bob Aiello
Hmmm looking at some of the other postings here
I realize that I did not setup tomcat/apache.
(I was thinking that the maven server might have 
some httpd bundled.)

in terms of tomcat/apache what do I need to setup?

(I have been going through every piece of maven setup
documentation that I could find and I have not seen 
anything on this. Is there a setup checklist hiding somewhere?

Bob

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, May 15, 2007 2:40 PM
To: users@maven.apache.org
Subject: RE: setting Maven on Linux

You have to define the proxy in setting.xml in proxy section.

Thanks
Jaish 

-Original Message-
From: Bob Aiello [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, May 15, 2007 11:37 AM
To: Maven Users List
Subject: setting Maven on Linux

I am working on setting up maven on a Linux server behind a corporate
firewall and I am trying to understand how maven works.

I think that I need to have maven listening on port  and httpd
listening on 8080. 

I see that when I execute the maven-proxy.sh in the maven2/bin directory
the  port starts to show that it is listening (as reported by
netstat -an).
So am correct in thinking that the listener for  is this
maven-proxy.sh script?

What should I be using to listen on port 8080? (I suspect that I need to
run Apache, but it is also possible that maven bundles the httpd
server.)

When I try to use...
mvn -e archetype:create \
  -DarchetypeGroupId=org.apache.maven.archetypes \
  -DgroupId=com.mycompany.app \
  -DartifactId=my-app

I get org.apache.maven.lifecycle.LifecycleExecutionException: The plugin
'org.apache.maven.plugins:maven-archetype-plugin' does not exist or no
valid version could be found

Which makes me think that maven is not setup or my firewall is open yet.

Any help would be greatly appreciated...

Bob

-
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]



RE: setting Maven on Linux

2007-05-15 Thread Bob Aiello
Is this what you mean?



 
 
  central-mirror
  central
  http://myserver02.bob.com:/repository
  
  
  snapshot-mirror
  snapshot
  http://myserver02.bob.com:/repository
  
  
  


-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, May 15, 2007 2:40 PM
To: users@maven.apache.org
Subject: RE: setting Maven on Linux

You have to define the proxy in setting.xml in proxy section.

Thanks
Jaish 

-Original Message-
From: Bob Aiello [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, May 15, 2007 11:37 AM
To: Maven Users List
Subject: setting Maven on Linux

I am working on setting up maven on a Linux server behind a corporate
firewall and I am trying to understand how maven works.

I think that I need to have maven listening on port  and httpd
listening on 8080. 

I see that when I execute the maven-proxy.sh in the maven2/bin directory
the  port starts to show that it is listening (as reported by
netstat -an).
So am correct in thinking that the listener for  is this
maven-proxy.sh script?

What should I be using to listen on port 8080? (I suspect that I need to
run Apache, but it is also possible that maven bundles the httpd
server.)

When I try to use...
mvn -e archetype:create \
  -DarchetypeGroupId=org.apache.maven.archetypes \
  -DgroupId=com.mycompany.app \
  -DartifactId=my-app

I get org.apache.maven.lifecycle.LifecycleExecutionException: The plugin
'org.apache.maven.plugins:maven-archetype-plugin' does not exist or no
valid version could be found

Which makes me think that maven is not setup or my firewall is open yet.

Any help would be greatly appreciated...

Bob

-
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]



setting Maven on Linux

2007-05-15 Thread Bob Aiello
I am working on setting up maven on a Linux server
behind a corporate firewall and I am trying to understand
how maven works.

I think that I need to have maven listening on port 
and httpd listening on 8080. 

I see that when I execute the maven-proxy.sh
in the maven2/bin directory the  port starts 
to show that it is listening (as reported by netstat -an).
So am correct in thinking that the listener for  is
this maven-proxy.sh script?

What should I be using to listen on port 8080? (I suspect that I need to
run
Apache, but it is also possible that maven bundles the httpd server.)

When I try to use...
mvn -e archetype:create \
  -DarchetypeGroupId=org.apache.maven.archetypes \
  -DgroupId=com.mycompany.app \
  -DartifactId=my-app

I get org.apache.maven.lifecycle.LifecycleExecutionException: The plugin
'org.apache.maven.plugins:maven-archetype-plugin' does not exist or no
valid version could be found

Which makes me think that maven is not setup or my firewall is 
open yet.

Any help would be greatly appreciated...

Bob

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



NYC Maven/Ant Build Engineer position...

2007-05-03 Thread Bob Aiello
I am looking to hire build engineer/junior java developer
to help me with Unix/Linux based Maven/Ant Java builds for 
a number of exciting large financial systems (www.accelortrading.com).

If you are interested please contact me directly.

Bob Aiello
Manager, Process
FXall LLC (www.fxall.com)
646 268 9914

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]