How to setup repeatable builds with maven or how to tag dependencies

2007-10-17 Thread Olaf Meske

Hi All,

I'm a beginner of Maven and I'm doing some research if we could use 
maven for some of our projects.
One thing that we really need, is to repeat our builds from the tagged 
versions from the cvs/svn with the exact same result. But I understand 
that maven will get the newest matching version of any dependency on 
every run.


So all I'll can think to get this to work are these following ways:

1.) To check-in ALL dependencies into a local maven repository and this 
maven repository into the cvs/svn, but with this this approach I'll lost 
the possibility to use any 3rd party maven proxy to handle the external 
dependencies and I really have to get and check-in every external 
dependency by myself.


OR

2.) To check-in every assembly into the cvs/svn repository and to tag 
this assembly. But with this is double the source of every snapshot 
within the cvs/svn and I'll lost much of the project internal history 
and dependencies (with the assembly I'll not be able to step through the 
history of any source files, because I duplicated it).


OR

3.) To used fixed versions with the dependencies and no range or 
matching versions. But with this I'll lost some of the main features of 
maven, to solve the dependencies between the dependencies.


Are there any other ways to setup maven projects to get repeatable 
builds with dependencies?



Olaf


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



Re: How to setup repeatable builds with maven or how to tag dependencies

2007-10-17 Thread Olaf Meske

Torsten Schlabach schrieb:

Hi Olaf,

just to help me understand:

Am I assuming right that

- some of your dependencies are external to your project and some of them are 
internal, i.e. different parts (modules) of your project which move at 
different speed in terms of SCM?

Yes


- your internal dependencies are setup using -SNAPSHOT as an alias for always the 
latest?
I haven't setup any project now, but when I setup internal dependencies 
I'll think I'll use the SNAPSHOT feature during development, but I have 
to use a fixed, distinct version at release time.


In case my assumptions would be right, would it then help you if you'd record 
just a map of the exact timestamps used in a given build and have a facility to 
let Maven pick up just that versions when trying to build again?
I don't really like to match any tagging version information from the 
SCM via a timestamp to the rest of the dependencies from a maven repository.



So, I think I'll adopt the proposal of Jörg and use a company repository 
for the downloaded artifacts.




Regards,
Torsten


 Original-Nachricht 

Datum: Wed, 17 Oct 2007 11:32:42 +0200
Von: Olaf Meske [EMAIL PROTECTED]
An: Maven Users List users@maven.apache.org
Betreff: How to setup repeatable builds with maven or how to tag dependencies



Hi All,

I'm a beginner of Maven and I'm doing some research if we could use 
maven for some of our projects.
One thing that we really need, is to repeat our builds from the tagged 
versions from the cvs/svn with the exact same result. But I understand 
that maven will get the newest matching version of any dependency on 
every run.


So all I'll can think to get this to work are these following ways:

1.) To check-in ALL dependencies into a local maven repository and this 
maven repository into the cvs/svn, but with this this approach I'll lost 
the possibility to use any 3rd party maven proxy to handle the external 
dependencies and I really have to get and check-in every external 
dependency by myself.


OR

2.) To check-in every assembly into the cvs/svn repository and to tag 
this assembly. But with this is double the source of every snapshot 
within the cvs/svn and I'll lost much of the project internal history 
and dependencies (with the assembly I'll not be able to step through the 
history of any source files, because I duplicated it).


OR

3.) To used fixed versions with the dependencies and no range or 
matching versions. But with this I'll lost some of the main features of 
maven, to solve the dependencies between the dependencies.


Are there any other ways to setup maven projects to get repeatable 
builds with dependencies?



Olaf


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


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





--

Olaf Meske
Senior Software Engineer

SoftCare Software-Service GmbH
Kieler Straße 103
25474 Bönningstedt
Germany

PHONE +49 (0) 40 55 69 50-33
FAX +49 (0) 40 55 69 50-50
EMAIL [EMAIL PROTECTED]
WEB www.softcare.de

Based in: Kieler Straße 103, 25474 Bönningstedt, Germany
Register court: Amtsgericht Pinneberg, HRB 4086
Managing Directors: Marion Schrader, Andreas Schrader

+++ Manage any Content. Serve all Media. Cross-media publishing with 
SoftCare K4. +++


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