Re: [m2] parent poms and svn externals
Right - though Maven discovers pom's in ../pom.xml, so if your layout is different, you must ensure that the parent is already installed in the repository (mvn install in the build directory in this case, or deployed to a remote repository accessible from the child project). - Brett On 11/20/05, Stephen Duncan [EMAIL PROTECTED] wrote: Child projects specify their parent POM using the parent tag instead of extends. A parent tag looks like this: parent groupIdcom.myproject/groupId artifactIdmyproject/artifactId version1.3-SNAPSHOT/version /parent The parent POM is looked for in the repository, so, in your source structure, it can exist anywhere. -Stephen On 11/19/05, Wendy Smoak [EMAIL PROTECTED] wrote: Struts uses svn externals to place /struts/build/trunk under each other sub-project, such as core. (Then a 'current' external to make it possible to check out all the sub-projects at once.) The result is a structure like this: /current/build /current/core /current/core/build Where those two build directories contain the exact same files. With m1 and the reactor, you could run from current/build/ using maven.multiproject.basedir = ../ maven.multiproject.includes = */project.xml maven.multiproject.excludes = build/* and maven:reactor basedir=../ includes=*/project.xml excludes=build/project.xml goals=dist / Then each of the project.xml files extends the project.xml *below* it in the svn external build directory: extendbuild/project.xml/extend In m2 it seems I can't have it both ways... build from the top and extend beneath using the same parent pom in multiple places. The goal is to be able to check out and build a single sub-project. I'll spare you my wild guesses at how to make this work and just ask for advice. Can it be done, or will the sub-project poms have to extend../build/pom.xml/extend ? (Or should it be done some other way?) Thanks, -- Wendy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Stephen Duncan Jr www.stephenduncanjr.com - 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]
Re: [m2] parent poms and svn externals
On 11/20/05, Brett Porter [EMAIL PROTECTED] wrote: Right - though Maven discovers pom's in ../pom.xml, so if your layout is different, you must ensure that the parent is already installed in the repository (mvn install in the build directory in this case, or deployed to a remote repository accessible from the child project). Right now (with m1) we can check out a single subproject and build it with just 'svn co ...' and 'maven dist'. It seems like we're going to lose that with m2. So far I think the parent tag has to include relativePath../build/pom.xml/relativePath (and everyone will need to know to check out 'build' along with whichever sub-project). And the svn externals are no longer useful. That's okay... but before I go down that path I want to make sure I'm not missing something that will make it Just Work with m2. Thanks, -- Wendy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: [m2] parent poms and svn externals
This issue has notes relevant to you too (for one, it must be absolute path; for two, I'm not sure, but it seems they plan to get rid of the feature). Please comment and vote... http://jira.codehaus.org/browse/MNG-1471 -Original Message- From: Wendy Smoak [mailto:[EMAIL PROTECTED] Sent: Sunday, November 20, 2005 12:31 PM To: Maven Users List Subject: Re: [m2] parent poms and svn externals On 11/20/05, Brett Porter [EMAIL PROTECTED] wrote: Right - though Maven discovers pom's in ../pom.xml, so if your layout is different, you must ensure that the parent is already installed in the repository (mvn install in the build directory in this case, or deployed to a remote repository accessible from the child project). Right now (with m1) we can check out a single subproject and build it with just 'svn co ...' and 'maven dist'. It seems like we're going to lose that with m2. So far I think the parent tag has to include relativePath../build/pom.xml/relativePath (and everyone will need to know to check out 'build' along with whichever sub-project). And the svn externals are no longer useful. That's okay... but before I go down that path I want to make sure I'm not missing something that will make it Just Work with m2. Thanks, -- Wendy - 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]
Re: [m2] parent poms and svn externals
On 11/21/05, Wendy Smoak [EMAIL PROTECTED] wrote: It seems like we're going to lose that with m2. So far I think the parent tag has to include relativePath../build/pom.xml/relativePath (and everyone will need to know to check out 'build' along with whichever sub-project). And the svn externals are no longer useful. No, that's not the case. Someone just needs to deploy that root project. Relative path is just a hint for using a multiproject checkout structure so that if you edit it locally it gets picked up. It still goes to the repository if it is not found. - Brett - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [m2] parent poms and svn externals
This doesn't appear relative to the parent element. - Brett On 11/21/05, Jeff Jensen [EMAIL PROTECTED] wrote: This issue has notes relevant to you too (for one, it must be absolute path; for two, I'm not sure, but it seems they plan to get rid of the feature). Please comment and vote... http://jira.codehaus.org/browse/MNG-1471 -Original Message- From: Wendy Smoak [mailto:[EMAIL PROTECTED] Sent: Sunday, November 20, 2005 12:31 PM To: Maven Users List Subject: Re: [m2] parent poms and svn externals On 11/20/05, Brett Porter [EMAIL PROTECTED] wrote: Right - though Maven discovers pom's in ../pom.xml, so if your layout is different, you must ensure that the parent is already installed in the repository (mvn install in the build directory in this case, or deployed to a remote repository accessible from the child project). Right now (with m1) we can check out a single subproject and build it with just 'svn co ...' and 'maven dist'. It seems like we're going to lose that with m2. So far I think the parent tag has to include relativePath../build/pom.xml/relativePath (and everyone will need to know to check out 'build' along with whichever sub-project). And the svn externals are no longer useful. That's okay... but before I go down that path I want to make sure I'm not missing something that will make it Just Work with m2. Thanks, -- Wendy - 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] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [m2] parent poms and svn externals
On 11/20/05, Brett Porter [EMAIL PROTECTED] wrote: No, that's not the case. Someone just needs to deploy that root project. Relative path is just a hint for using a multiproject checkout structure so that if you edit it locally it gets picked up. It still goes to the repository if it is not found. Okay, that will allow each child to find its parent. But how does the parent find the children? If I have current/build/pom.xml current/core/pom.xml current/taglib/pom.xml Then what do I put in the module tags in current/build/pom.xml? module../core/module module../taglib/module ? In addition to being able to build a single sub-project, I also need to be able to build all of them at once. Thanks for your patience. :) -- Wendy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [m2] parent poms and svn externals
You've got this corect - the modules are path based (in hindisght, maybe they should be repository references too - we'll look at implementing that in a backwards compatible way in 2.1). - Brett On 11/21/05, Wendy Smoak [EMAIL PROTECTED] wrote: On 11/20/05, Brett Porter [EMAIL PROTECTED] wrote: No, that's not the case. Someone just needs to deploy that root project. Relative path is just a hint for using a multiproject checkout structure so that if you edit it locally it gets picked up. It still goes to the repository if it is not found. Okay, that will allow each child to find its parent. But how does the parent find the children? If I have current/build/pom.xml current/core/pom.xml current/taglib/pom.xml Then what do I put in the module tags in current/build/pom.xml? module../core/module module../taglib/module ? In addition to being able to build a single sub-project, I also need to be able to build all of them at once. Thanks for your patience. :) -- Wendy - 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]
[m2] parent poms and svn externals
Struts uses svn externals to place /struts/build/trunk under each other sub-project, such as core. (Then a 'current' external to make it possible to check out all the sub-projects at once.) The result is a structure like this: /current/build /current/core /current/core/build Where those two build directories contain the exact same files. With m1 and the reactor, you could run from current/build/ using maven.multiproject.basedir = ../ maven.multiproject.includes = */project.xml maven.multiproject.excludes = build/* and maven:reactor basedir=../ includes=*/project.xml excludes=build/project.xml goals=dist / Then each of the project.xml files extends the project.xml *below* it in the svn external build directory: extendbuild/project.xml/extend In m2 it seems I can't have it both ways... build from the top and extend beneath using the same parent pom in multiple places. The goal is to be able to check out and build a single sub-project. I'll spare you my wild guesses at how to make this work and just ask for advice. Can it be done, or will the sub-project poms have to extend../build/pom.xml/extend ? (Or should it be done some other way?) Thanks, -- Wendy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: [m2] parent poms and svn externals
Child projects specify their parent POM using the parent tag instead of extends. A parent tag looks like this: parent groupIdcom.myproject/groupId artifactIdmyproject/artifactId version1.3-SNAPSHOT/version /parent The parent POM is looked for in the repository, so, in your source structure, it can exist anywhere. -Stephen On 11/19/05, Wendy Smoak [EMAIL PROTECTED] wrote: Struts uses svn externals to place /struts/build/trunk under each other sub-project, such as core. (Then a 'current' external to make it possible to check out all the sub-projects at once.) The result is a structure like this: /current/build /current/core /current/core/build Where those two build directories contain the exact same files. With m1 and the reactor, you could run from current/build/ using maven.multiproject.basedir = ../ maven.multiproject.includes = */project.xml maven.multiproject.excludes = build/* and maven:reactor basedir=../ includes=*/project.xml excludes=build/project.xml goals=dist / Then each of the project.xml files extends the project.xml *below* it in the svn external build directory: extendbuild/project.xml/extend In m2 it seems I can't have it both ways... build from the top and extend beneath using the same parent pom in multiple places. The goal is to be able to check out and build a single sub-project. I'll spare you my wild guesses at how to make this work and just ask for advice. Can it be done, or will the sub-project poms have to extend../build/pom.xml/extend ? (Or should it be done some other way?) Thanks, -- Wendy - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Stephen Duncan Jr www.stephenduncanjr.com - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]