On Sat, 2003-06-28 at 09:14, Brendan Lawlor wrote: > Thanks Jason, > That explains things, but it does leave me with the following problem: > > I was specifically trying to avoid a situation when the main project > physically contained the sub projects
They don't need to be physically contained within the main project. They can be in a parallel directory structure: build/ main/ project0/ project1/ project2/ > (sorry for the awkward questions on a > Saturday!). The reason to avoid this structure is that we do things in a > very component-based way. Our subprojects are heavily reused by other main > projects. But the directory structure (which presumeably must be reflected > in CVS) means that each sub-project must have only one parent. > > I suppose it might be possible to _not_ maintain the parent-child directory > relationship in CVS, and check out the subproject modules under the > directory that the main project module is checked out in. But as many CVS > commends can be recursive I suspect that this will cause strange behaviour > from CVS tools such and WinCVS. > > Any experience with such matters? > > Brendan. > > -----Original Message----- > From: Jason van Zyl [mailto:[EMAIL PROTECTED] > Sent: 28 June 2003 14:05 > To: Maven Users List > Subject: Re: Dependency lists for 'main' projects > > > On Sat, 2003-06-28 at 08:49, Brendan Lawlor wrote: > > Hi, > > I have a problem: I want to make a 'main' project made up of sub > projects > > or component projects (following the excellent article by Charles Chan of > > IBM). I would like to record the dependencies of this main project on its > > component parts in the POM. If I do this, then I cannot build the main > > project as none of the component libraries are installed yet. But the > whole > > point of this main project is to build and install its component parts > > (using reactor). > > > > This is a real chicken-and-egg situation. The only way to break the cycle > is > > to remove the dependencies, and if I do that, then my main project's POM > > doesn't reflect its component parts. > > > > Am I missing a point somewhere? > > Maven checks to make sure that all your binary dependencies are present > before building so what you are attempting needs to be altered slightly. > > If you you have a directory that contains all your projects (i.e. your > main project and the projects it depends on) then the reactor will see > that your main project depends on your other projects and build it last. > > So as part of your reactor build you might specify the 'jar:install' > goal which will build and install the JARs. When at last your main > project is encountered all its dependencies will have been built and > installed and the build for your main project should work. > > If this is what you are attempting and it's not working then you must > check to make sure you have your dependencies stated correctly. > Unfortunately we have no lint type mechanism to check for common > problems yet. > > > Regards, > > Brendan. > > > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > -- > jvz. > > Jason van Zyl > [EMAIL PROTECTED] > http://tambora.zenplex.org > > In short, man creates for himself a new religion of a rational > and technical order to justify his work and to be justified in it. > > -- Jacques Ellul, The Technological Society > > > --------------------------------------------------------------------- > 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] -- jvz. Jason van Zyl [EMAIL PROTECTED] http://tambora.zenplex.org In short, man creates for himself a new religion of a rational and technical order to justify his work and to be justified in it. -- Jacques Ellul, The Technological Society --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
