Mark Lundquist wrote:

IIUC, SNAPSHOT is concerned w/ the relationship btwn. remote and local repositories. That's not in view here.
Huh? SNAPSHOT identifies an artifact as not-released. There is no requirement that it ever be published to a remote repository. In our environment we have our own private remote repository and after a change has been made we do deploy the snapshot to that repository just so others can use it. Of course, the snapshot is never deployed until the corresponding source is committed.

I think what you are referring to is that maven "knows" that snapshots change and it determines whether it needs to update the copy in your local repository. If you have a local repository for each subproject this should get you what you need.

I'm not at all convinced :-). You will have to spell it out for me blow-by-blow and explain mechanistically just how my problem is solved "using SNAPSHOT in conjunction with the -s option".


And even if it could be... it still doesn't satisfy my requirement that the solution be location-based, i.e. "set-and-forget" vs. invocation-dependent. "-s" isn't going to cut it, it has to be plain old "mvn" everywhere.

Yes, you have to modify the POM, but you are supposed to modify the pom when you are making changes to a project.

No, no, no! :-) Let's say I'm starting work on some change set that I plan to submit as a patch. If those changes in and of themselves entail a change to the pom (e.g., a new module, or a new dependency, or a different version of a dependency) then I will change the pom as part of my patch. If my changes don't require that, then I absolutely *should not* have to make any local tweaks to the pom just for the sake of having this build not interfere with other builds of the project on my local machine. To say it a different way: the changes I make to the pom should be exactly the changes (if any) that I would submit as part of my patch, and no more! Didn't you read the paragraph in my original post that ends with "et unmaintanable cetera"? :-)
I don't understand "If those changes in and of themselves entail a change to the pom". You don't change the pom version only when data in the pom itself changes. If you changed a project or subproject in any way and the pom is not already a snapshot then you need to submit a snapshot pom with your change. This is because the next formal release MUST have a new version number, no matter how small the change.

It's like we're talking past each other... I've said "I need feature F because there's no way to do X except in this fiddly, error-prone way", and you are saying "well, you don't need feature F because there is already a way to do it, albeit fiddly and error-prone". That's the whole point, that is why I need the feature :-)
Maybe we're talking past each other because I don't believe that is how maven is designed to work. At least, not from how I've used it for the last 3 years. And I don't think the paradigm changed all that much with Maven 2.

Ralph


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to