Here's how I deal with instances where I need a snapshot plugin in my
corp build:
1. Checkout the code for the snapshot.
2. Build it, changing the version to something like
2.0-[companyname]-svnrev
3. If I have to patch the source at all, I take the whole thing and put
it in my svn. If not, then the svnrev in the release points me back to
where I got it in case I need it later.
4. Deploy it to my repos.
5. Use this now "internally released" version in my builds.


I've done this, and also with smaller external snapshots I've downloaded
them and just adjusted the metadata (and filename) before deploying to my
local repos.

What would be really, really, really useful would be a plugin that you could
call that would download a snapshot of a project and its (transient,
snapshot) dependencies, re-label it as a fixed internal version. There's
occasions where you just can't wait for an external project to release (and
of course this problem is recursive!), and rebuilding everything yourself is
a bit drag on the person doing a release.

something like
mvn artifact:freeze-snapshot org.apache.myfaces myfaces-all 1.1.6-SNAPSHOT
1.1.6-mycorp

Reply via email to