You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@maven.apache.org by John Wooten <jw...@gmail.com> on 2009/02/24 22:47:02 UTC

Setup for multiple products

I was examining the Example in the Book "Better Builds With Maven" and  
find that it focuses on  a product "Proficio".  In our case we have  
several products and a suite of "modules".  Would the following be a  
reasonable structure for us?

/areteq
	/pom.xml - super pom - contains site information, etc.?
	/modules
		/foundation
			/pom.xml  - to create the foundation jar (common to all products)
			/src .. in all of these
		/engine
			/pom.xml - to create the engine jar ( common to all products )
		/pre-processors
			/pom.xml - to create all pre-processor jars
			/pre-processor1
				/pom.xml - to create pre-processor1 jar
			/pre-processor2
				/ etc.
		/post-processors
		/renderers
	/products
		/pom.xml - to create all products and test?
		/product1
			/pom.xml - to create product1 and test?  Contains list of child  
modules it depends upon?
			/src - not clear there is much here except for resources, data,  
configurations.
		/product2
			etc.

Now, if we want to put our documentation on our site, I could run at  
the top level to generate the site?
Since each product uses different combinations of processors,  
configurations, etc., do the product poms use the children modules,  
and the children don't have
	anything about their parents since they might be different?  It's  
clear that engine's pom has to have foundation pom as a dependency,  
and so forth in some of
	the others.

Does this make sense?  It will take a while and I want to be sure I'm  
approaching a multi-product maven setup in the correct manner.  (I  
won't try to do this all at once, but rather product1 and get that  
working 8-)





---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Setup for multiple products

Posted by Brett Porter <br...@apache.org>.
You seem to be on the right track. One statement was a bit confusing:

On 25/02/2009, at 8:47 AM, John Wooten wrote:

> Since each product uses different combinations of processors,  
> configurations, etc., do the product poms use the children modules,  
> and the children don't have
> 	anything about their parents since they might be different?  It's  
> clear that engine's pom has to have foundation pom as a dependency,  
> and so forth in some of
> 	the others.

All the children should have parents consistent with the structure of  
the layout. There should be a 1:1 relationship with the parent and the  
modules. Consider your release patterns as well - you want to make  
sure a releasable unit is buildable together from a common root.

Products should have dependencies on stuff from /modules in your case,  
which I think you have correct.

Hope this helps.

- Brett


--
Brett Porter
brett@apache.org
http://blogs.exist.com/bporter/


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org