[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Repository organization for complex project

From: David Weintraub <qazwart_at_gmail.com>
Date: Thu, 14 Oct 2010 16:11:50 -0400

What? You want a GOOD Maven manual? Real programmers don't use
manuals. We hack away for years in frustration and futility until we

Maven is one of the WORST Unix documented projects I've seen. I know
of only two books: Maven: The Definitive Guide
<http://www.sonatype.com/books/maven-book/> and Better Builds with
Maven <http://www.maestrodev.com/support>. Better Builds with Maven
was full of errors both grammatical and technical. Maven: The
Definitive Guide is a bit better.

(Do not use "Maven, A Developer's Notebook" because this is for an
obsolete version of Maven. It's like learning Unix administration from
a MS-DOS 3.1 manual.)

The documentation on the Maven website itself is awful. It looks like
someone said "We have a Wiki
<http://docs.codehaus.org/display/MAVENUSER/Home>! Documentation

Fortunately, you don't really have to know too much about Maven if
you're not a Java developer. The intricacies of the pom.xml file don't
concern you. Possibly, the only Maven command you really have to know
is "mvn deploy:deploy-file" which doesn't require a pom.xml file
And, if that command concerns you too much, you can simply revert to

You do have to understand the Maven repository layout which is a
fairly straight forward hierarchal affair and both Nexus and
Artifactory cover that pretty well.

On Thu, Oct 14, 2010 at 2:42 PM, Les Mikesell <lesmikesell_at_gmail.com> wrote:
> On 10/14/2010 8:24 AM, David Weintraub wrote:
>> On Thu, Oct 14, 2010 at 3:39 AM, Stephen Connolly
>> <stephen.alan.connolly_at_gmail.com>  wrote:
>>> Our C/C++ guys just use curl to POST the binaries to Nexus over
>>> http... we also POST the .pom file and the .md5 and .sha1 files...
>>> that is because one of their build toolchain envs cannot have Java on
>>> it... Nexus will rebuild the metadata.xml files for you, so all you
>>> really need is to post the .pom and the e.g. .so and the .pom.md5,
>>> .pom.sha1, .so.md5 and .so.sha1 files and you're done.
>> I would think that you'd need whatever protocol Maven uses to actually
>> put files on the repository. I guess the Maven protocol is simpler
>> than I thought and simply uses webdav authentication and the mvn
>> file::deploy simply calculates the URL for you.
>> That's good to know. That means you can replace all of Maven with some
>> fairly simple shell scripts using curl. Then in a non-Java project,
>> all the Maven repositories do is provide a nice interface for
>> searching and administration of a HTTP based repository.
> Is there a maven-for-dummies reference somewhere that would make a good
> starting point for how the repository is supposed to work?  I tend to get
> lost easily with java-like things that have a bazillion separate config
> files all over the place.  Also, is mirroring/redundancy built into the
> design?
> --
>  Les Mikesell
>   lesmikesell_at_gmail.com

David Weintraub
Received on 2010-10-14 22:12:49 CEST

This is an archived mail posted to the Subversion Users mailing list.