[ajug-members] Internal Maven remote repositories
Jason Chambers
tooger at bellsouth.net
Tue Feb 20 07:55:03 EST 2007
I'm looking for some Maven expertise out there.
Maven has a great concept of repositories. There are two types of
repositories - local and remote. Freshly installed out of the box,
your local repository contains nothing but as Maven gets put to work,
it gets populated with any dependencies it may be missing. Let's say
your project depends on Spring. When you build your project, Maven
will check your local repository first to see if Spring is there. If
not, it pulls it down from a remote repository (by default this is
http://repo1.maven.org/maven2 I believe) . The next time you do a
build, it becomes much quicker because Spring is already cached in
the local repository.
Now, your project is itself a dependency required by another project.
So, you 'mvn install' and this action puts the target (e.g. Jar) into
the local repository making it visible to you and your other projects
you may be working on.
Further along in development, you are ready to share the components
you have built with the rest of the team so they can build and run
against it. This is performed using 'mvn install'. However, you don't
have access to install to the remote repository - and you're probably
working on non open source stuff anyway so you probably don't want to
publish this out to the world anyway.
So, before you know it you are at the point where you need an
internal remote repository. Something that sits behind the firewall
between the remote repositories and the development team.
My question is simply, what is the best approach to setting up this
internal remote repository? Do you use a mirror of repo1? Do you shut
off access to the remote repositories? Do you use a maven proxy? If
so, which one? http://maven-proxy.codehaus.org/ http://
proximity.abstracthorizon.org/
Jason
More information about the ajug-members
mailing list