Yes, it would be great (I think) to have something like this. But someone needs to write it ;)
"Nothing is impossible for the man who doesn't have to do it himself" :-)
Well, the simplest case would be
"If feature A is enabled, include these jars and config files"
Then there would be the
"If feature A is enabled, include these jars and add this to the existing config files"
The most difficule would probably be
"If feature is A enabled, include jar set X if also feature B is enabled but not feature C is, in other cases add jar set Y and add Z to web.xml if not feature C is enabled or not not neither Ajax4JSF !"#¤%#"
not sure if seam-gen is the right place to this complexity.
There are three parts here:
1) Get the right dependencies
2) Get the configuration adjusted
3) Generate source code for "quickstarting"
#1 Maven/Ivy is known to handle well
#2 if the tool doesn't do it in delta's it will require pretty complex templates to accomodate for the combinatorial combinations.
#3 is trivial when you have 1 and 2.
An other "custom-made" approach would be:
- keep a quickstarting as it is currently,
without choice about the basic frameworks
- add the possibility to use specific technologies
e.g. joda datetime, PDF generation...
- and still be able to regenerate all the project without deleting
the specific developments
This means to add in seam-gen some custom entry points like:
- library declarations in xhtml templates
- type filters in edit/viewproperties.xhtml.ftl and list.xhtml.ftl
- derived classes for HomeEntity and ListEntity in build.properties
- some src/misc directory to put in it the project devlopments