You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@maven.apache.org by Avihaimar <av...@yahoo.com> on 2009/02/09 17:46:51 UTC

How to manage your artifact versions

Hey,

My application is composite from a lot of artifacts.
If i set my artifact version to be snapshot than each time a developer will
build the ear on his machine maven will download a newer version from the
remote repository and not use the developer version.

So, i dont understand the benefit of snapshot.

>From the other side if i have 20 artifacts , which develop by differnet
teams there is no reason to me to compile the artifacts that i didnt touch
them.

Advices will be welcome
-- 
View this message in context: http://www.nabble.com/How-to-manage-your-artifact-versions-tp21916752p21916752.html
Sent from the Maven - Users mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: How to manage your artifact versions

Posted by Stephane Nicoll <st...@gmail.com>.
On Mon, Feb 9, 2009 at 5:46 PM, Avihaimar <av...@yahoo.com> wrote:

>
> Hey,
>
> My application is composite from a lot of artifacts.
> If i set my artifact version to be snapshot than each time a developer will
> build the ear on his machine maven will download a newer version from the
> remote repository and not use the developer version.


Well, sounds like you need some background info here. The purpose of
SNAPSHOT is to give you latest development version of an artifact. Ideally
(IMO), SNAPSHOTs should be deployed by a developer when (s)he considers that
it reaches some state (feature partly implemented or stable, etc). If you
have a CI system that deploys every 2 hours it defeats this principle.

However, you can configure your settings to look for snapshot only when your
copy is 1 hour, 4 hours, 1 day old, etc.

When you say that it does not use the developer version, it simply means
that the version on the repository is newer than the one from the developer.
If you decide to use SNAPSHOT, it is normal that you get the latest one.

You can have some fallback strategies though. For instance, we have two
snapshot repositories. The  first one is "stable" development snapshot and
contains only artifacts deployed by a team member. The second one is updated
automatically at every CI build. That way, if an artifact was never deployed
for a given version, we can just activate a profile and fetch it from the
second repository.

HTH,
Stéphane



>
> So, i dont understand the benefit of snapshot.
>
> From the other side if i have 20 artifacts , which develop by differnet
> teams there is no reason to me to compile the artifacts that i didnt touch
> them.
>
> Advices will be welcome
> --
> View this message in context:
> http://www.nabble.com/How-to-manage-your-artifact-versions-tp21916752p21916752.html
> Sent from the Maven - Users mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>


-- 
Large Systems Suck: This rule is 100% transitive. If you build one, you
suck" -- S.Yegge