Am 17.01.2013 23:17, schrieb Stephen Connolly:
First, when you are playing with install:install-file you will find that
you regularly need to blow away your local cache (which is the real name of
the "local repository")...
Turned out I'm not really installing to .m2/repository, but to something
that m2eclipse calls "Workspace Projects".
This has been working well, so I hope I can stick with that.
Seems like that "local repository" terminology had me confused.
What about changing the docs so that they don't say "local repository"
but "repository cache"? That would spare future maven newbies that
confusions. The paragraph that introduces it can explain that it's
technically just a normal repository, but that you shouldn't do anything
with it but occasionally clean out old cruft (or whatever it is that's
okay to do with the local repository cache).
Second, repository routing... the killer feature of MRMs. Not everything is
in central. There's the world of crazyness that is the redhat repos, the
old java.net repos, the pile of people who have yet to get why you should
push your stuff to central, or who think pushing to central is hard... and
then you end up with a pom from one repo and an artifact from another...
and the transitive deps are wrong because the poms are different.
An MRM allows you to specify exactly what artifacts can be sourced from
which repositories and also gives you a single flat repository for maven to
pull from...
Okay, this hasn't been an issue yet but I'll keep that in mind.
> Most of the MRMs are trivial to set up and give you a reliable store
> to cache in front of you.
The issue being, this is another potential point of failure that I'll
have to check if something goes wrong. So I'll want to postpone this
until I'm familiar with the rest of the toolchain, getting that all to
work hasn't been easy and I probably haven't seen all failure modes yet.
Third, performance. When you list multiple <repository> in your pom or
settings.xml you force artifact resolution to hit ALL of them. with an MRM
you set <mirrorOf>*</mirrorOf> and you now only hit one, it's local anyway,
it's flattened (because it's a virtual repo) and you have a fast reliable
build and you can scale it out to others.
I supposes the m2eclipse repository manager does that already. It is
hitting Maven Central on Eclipse startup, once (and takes minutes to
complete). I think it allows building right away, so I'm probably fine.
I can see that building from the command line might suck, because that
won't have the m2eclipse "Workspace Repositories" ... erm, what's an
MRM? A Maven Repository Manager?
There's more reasons if you feel you still want some...
I'd love to, but only if they are relevant.
I have yet to look up what exactly the m2eclipse "Workspace Projects"
thing is. Eclipse lists it in the "Maven Repositories" tab.
Thanks for taking the effort to respond after my rant.
Regards,
Jo
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]