Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [m2e-users] Maven, Eclipse, Nexus, Perforce, Team City, Oh My!

Thanks Asaf :-)

You're telling me Maven requires an advanced Maven Admin on the team/organization? No-one told me that before. I am the only one on the team with any Maven experience, and I am the software architect on a new infrastructure project, and since January the only person who has written any code on the project. My goal is to change that next week and let others start working on the code base. It would have been sooner, but I have been fighting Maven, Nexus and m2e configuration hassles for almost two weeks. Anyway, I started the wiki article to try share some of what I have learned. I still have more to figure out too, like the Team City side.

Yes, the Sonatype book is helpful to get your bearings, but does not sufficiently address the deeper issues that as far as I can tell are still only tribal knowledge shared in the mailing lists.

I figured out that when using m2e, that preferences>maven>Installations:Global Settings and preferences>maven>user settings:user settings both have to point to the same place, and I wanted the settings to be under source control so if I have to change them, the whole team will pick up the changes.

Your solution would have been my first choice, but in Windows soft links are problematic, especially with Windows XP, which some of our team still use. Google 'reparse points' and you will see how messed up Microsoft's view of the world is. Windows 7 finally has soft links like Unix, but they are still not as convenient to use as in Unix, and it will be a while before the rest of our team upgrade to Windows 7.

The most expedient and flexible solution I could come up with at the moment was to put settings.xml in the same path as the rest of the source control. Using the Windows 'subst' command gives me similar flexibility to soft links - and is easy to implement in Windows XP. While I was at it I decided to put the local repository there too because I can tell Perforce to ignore it with the .p4ignore file (using team>perforce>ignore in Eclipse). I know it all seems weird, but after trying many other things in Windows, it was the most simple way I could get things to work.

Thanks for asking these questions - it mean I need to explain myself better in the wiki article.

I have renamed the article to "Windows, Maven, Eclipse, Nexus, Perforce, Team City, Oh My!"

Where I work, Perforce is the tool we have, it is the tool the team knows how to use. For months I actually had things working with IBM Jazz Team Concert. It has it's own source control system that is not ClearCase, it's much better, and all the other Jazz tools are highly integrated. I am told Team Concerts' source control is more similar to Git, but I have no direct experience with Git. Eventually I switched back to our current set of tools because I did not have the resources to be sys admin for Jazz, and teach the team a new set of tools.

Thanks for in info on Git, I will have to look into it more some day.

Cheers, Eric

On 2011-08-07 12:42 PM, Asaf Mesika wrote:
Cool article.
 
You are correct: Maven has a very steep learning curve. M2E makes it easier only partially, but still requires an advance Maven Admin on the team/organization.
I wonder: Was the Sonatype book helpful? When I first started, it didn't exist yet and I had to learn only from another person who installed Maven for a living.

Regarding you setup depicted in the article, here are a few comments:
  • Why did you put your Maven repository under "P:\supercool\Maven\repository" and not stick with the convention of ~/.m2/repository (I don't remember the similar path in Windows, but it should be under the User Profile directory)? 
  • Why did you not put your settings file as convention goes: ~/.m2/settings.xml?
  • In our team, we softlinked ~/.m2/settings.xml to a source controlled directory everyone has: ~/work/acme/build, thus spreading a new company configuration easily. 
Regarding Perforce - Why not git? Git is free, amazingly fast, awfully intuitive, and has integration in all IDEs (Unfortunately best integration is in IntelliJ).
In my professional life I've used many tools: CA's CCC/Harvest, IBM's ClearCase, Subversion, Mercurial, and git.
The best tool I've found was git. One of my favorite feature is the merge - simply outstanding compared to any other tool.



-- 
Asaf Mesika
Sent with Sparrow

On יום שישי 5 אוגוסט 2011 at 08:35, Eric Kolotyluk wrote:

OK, this is my meager first attempt to give something back to the
community...

http://docs.codehaus.org/display/MAVENUSER/Maven%2C+Eclipse%2C+Nexus%2C+Perforce%2C+Team+City%2C+Oh+My!
<http://docs.codehaus.org/display/MAVENUSER/Maven%2C+Eclipse%2C+Nexus%2C+Perforce%2C+Team+City%2C+Oh+My%21>

Send e-mail to my personal address, or flame/commend me in the mailing
lists - I'm thick skinned, but receptive of praise.

The point is, I really love Maven, but I want to see it improve, and
this is my way of going about it. I hope hope to add more experience to
this in the future, so comments and criticism are appreciated.

Cheers, Eric
_______________________________________________
m2e-users mailing list
m2e-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/m2e-users



_______________________________________________
m2e-users mailing list
m2e-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/m2e-users

Back to the top