Hello Jacob, why don't you just import a common build file and define the common target there. Only when the target is not defined in the build file, the common target gets executed.
R, Markus M. May -------- Original-Nachricht -------- Datum: Mon, 23 Oct 2006 22:28:35 -0500 Von: Jacob Kjome <[EMAIL PROTECTED]> An: user@ant.apache.org Betreff: dynamic targets > > Along the lines of.... > http://marc.theaimsgroup.com/?l=ant-user&m=107429941032345&w=2 > > Is it possible to create targets dynamically, deferring creation > until such time as it is found that the project doesn't have the > target already defined? My use-case is using <subant> to iterate > over sub-builds calling a target on each one. My current strategy is > to define <patternset>s for each type of project. For instance, I > add all web projects to a particular patternset and then reference > that patternset when calling <subant>.... > > <subant target="war" inheritAll="false"> > <fileset dir="."> > <patternset refid="war.patternset"/> > </fileset> > </subant> > > > As further fallback, individual builds may implement empty targets > just so that they don't fail, just in case... > > <target name="war"> > <echo message="Unimplemented target"/> > </target> > > > However, ideally, I'd like to be able to create the above target > dynamically in the case that it isn't implemented already by the > build. This would have 2 benefits: > > 1. I wouldn't have to bother creating the patternsets. I'd just > call all the build files and let them either build the war file or > echo the "Unimplemented target" message. > > 2. Individual builds that aren't web projects wouldn't have to have > to know what a web project is. If the only artifact generated is a > simple jar library, it seems odd to have to implement a dummy "war" > target simply because some external master build file might call "war" on > it. > > > Instead of Ant failing with the following message... > > BUILD FAILED > Target `war' does not exist in this project. > > > ...I'd like Ant to just run the above dynamically created target (not > just the "war" target, but any target that might not exist), report > the "Unimplemented target" message, and continue on. > > So, is this possible? Where/how do I hook into Ant to know the > target isn't implemented and create it myself via a scriptdef before > Ant gives me the build failure? > > > Jake > > > --------------------------------------------------------------------- > 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]