Jamie - I have a similar issue.
Using your project structure names to illustrate - I am using a
jar:deploy-snapshot goal for the common and component1 projects. In the
POM file for the component1 and server projects I define the
dependencies for common and component1 with a version of SNAPSHOT.
This could help solve your first question.
-----Original Message-----
From: Jamie Bisotti [mailto:[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]>]
Sent: Thursday, June 30, 2005 2:23 PM
To: Maven Users List
Subject: Maven, CruiseControl, multiple projects & Best Practices
Assuming the following project layout:
sandbox/
trunk/
common/
project.xml
project.properties
component1/
project.xml
project.properties
server/
project.xml
project.properties
where:
- 'common' is a small collection of utility classes used by several
projects
- 'component1' depends on 'common'
- 'server' depends on 'common' and 'component1'
- They truly are separate pieces of code; 'common' will hardly ever
change; 'component1' will change occasionally, but not often; but
'server' will change quite a bit.
How, I think, I want CC to work:
1. There is a CC project, defined in my config.xml, which monitors the
'common' code and continuously builds it.
2. There is a CC project, defined in my config.xml, which monitors the
'component1' code and continuously builds it; this CC project also
watches the 'common' CC project and builds when it changes.
3. There is a CC project, defined in my config.xml, which monitors the
'server' code and continuously builds it; this CC project also watches
the 'common' and 'component1' CC projects and builds when they change.
4. I don't want to treat it as one big project (i.e. have CC monitor
'trunk') because building 'common' and 'component1' everytime would just
waste cycles needlessly.
Questions:
1. By default, the following goals get called: scm:update|clean
test|site:deploy. That works fine for 'common', but the other two
fail because they can't find common-1.0.jar. I know I can use
'jar:install' in place of 'test'; is that what others are doing?
2. I'd also like to have an aggregated site build. I'm thinking about
setting up a separeate CC 'site' project, which will watch 'common',
'component1' & 'server'. When it detects one of those has changed, it
will do a multiproject:site-deploy from 'trunk' (so, I will probably
leave the 'site:deploy' goal out of the other CC projects). Will that
work? Is there a better way?
Thanks in advance for any ideas/suggestions.
--
Jamie Bisotti
--
Paul M. Roberts
Sr Applcns Dvlpmt Consltnt/Mgr
United Behavioral Health
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]