I'll just stick it into my build-macros.xml file, with the above comment ... and forget about it :)
On Tue, Aug 12, 2008 at 7:22 PM, Matt Benson <[EMAIL PROTECTED]> wrote: > Complex... :( To decipher the semantic implications > of the provided solution, you're giving the touch task > a resource collection which restricts the contents of > another resource collection to those elements which do > not exist, using an exists selector wrapped in a not > selector. The resource collection wrapped is the > single-element resource collection consisting only of > a particular file. > > See > http://ant.apache.org/manual/CoreTypes/resources.html > and > http://ant.apache.org/manual/CoreTypes/resources.html#restrict > in particular for more information. > > -Matt > > --- Evgeny <[EMAIL PROTECTED]> wrote: > >> Oy, this looks complex ... but imho it's better than >> having multiple targets. >> Thanks. >> >> On Tue, Aug 12, 2008 at 6:13 PM, Matt Benson >> <[EMAIL PROTECTED]> wrote: >> > Or, barring all these other suggestions, you could >> > just use Ant >= 1.7 and write: >> > >> > <touch> >> > <restrict> >> > <file file="filetotouch" /> >> > <not >> > >> > xmlns="antlib:org.apache.tools.ant.types.resources.selectors"> >> > <exists /> >> > </not> >> > </restrict> >> > </touch> >> > >> > Note that the componentdef addition to Ant 1.8 >> will >> > obviate the need for the ns declaration of the not >> > (and, by inheritance, the exists) element. >> > >> > Sorry for the delay in providing this solution, >> > Matt >> > >> > --- Jim Showalter <[EMAIL PROTECTED]> >> wrote: >> > >> >> You could also write a java program to add the >> >> functionality and then add it in via taskdef. >> The >> >> downside is that your build file would not work >> on >> >> other platforms unless you included the class >> file >> >> that implements the task. >> >> >> >> Jim >> >> >> >> >> >> -----Original Message----- >> >> From: Evgeny [mailto:[EMAIL PROTECTED] >> >> Sent: Tuesday, August 12, 2008 3:53 AM >> >> To: Ant Users List >> >> Subject: Re: A way to create empty files >> >> >> >> >> >> It's not that I am worried it wont work, just too >> >> many targets makes >> >> it all messy. And then even when I myself try to >> >> decipher what goes >> >> where, I need to follow a huge tree of logic in >> >> dependencies. Since >> >> Ant is more of a functional language, I would >> rather >> >> avoid all that >> >> and just write one statement like <touch >> file="new" >> >> dontchangetimestamponexistingfile=true"/> or >> >> something. >> >> >> >> Ahh, well. >> >> >> >> On Mon, Aug 11, 2008 at 10:48 PM, EJ Ciramella >> >> <[EMAIL PROTECTED]> wrote: >> >> > Nope, you will have this additional target that >> >> tests for availability, >> >> > then your "touch" target will have an if/unless >> >> (depending on how you >> >> > configure your "availability" target) >> condition. >> >> > >> >> > This is typical. >> >> > >> >> > You shouldn't be too worried about many targets >> >> springing up all over >> >> > the place, as long as you don't provide a >> >> description, they won't show >> >> > during "ant -projecthelp" (which should be what >> >> people are using to see >> >> > what targets exist in a particular build file). >> >> > >> >> > -----Original Message----- >> >> > From: Evgeny [mailto:[EMAIL PROTECTED] >> >> > Sent: Monday, August 11, 2008 9:29 AM >> >> > To: Ant Users List >> >> > Subject: Re: A way to create empty files >> >> > >> >> > So there is no way to do this other than >> creating >> >> an additional target >> >> > with an "if" attribute? >> >> > >> >> > On Mon, Aug 11, 2008 at 3:09 PM, Kevin Jackson >> >> <[EMAIL PROTECTED]> >> >> > wrote: >> >> >> I think you want to look at the Available task >> >> >> >> >> >> >> >> >> > >> > http://ant.apache.org/manual/CoreTasks/available.html >> >> >> >> >> >> Thanks, >> >> >> Kev >> >> >> >> >> >> >> >> >> > >> > --------------------------------------------------------------------- >> >> >> 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] >> >> > >> >> > >> >> >> >> >> > >> > --------------------------------------------------------------------- >> >> 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] >> > >> > >> >> > --------------------------------------------------------------------- >> 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]