Stefan Bodewig <[EMAIL PROTECTED]> writes: > On Mon, 13 Dec 2004, Yves Martin <[EMAIL PROTECTED]> wrote: > >> To clean it, I decided to use project references but it does not >> work with 'antcall': > > This is because you set the reference in a different Project instance > than you try to read it in. > >> target A >> antcall B >> MyTask{getReference X} >> >> target B >> MyTask{setReference X} >> >> Is there a better way to implement a global storage ? > > Option (1) don't use antcall at all.
I think it is impossible. My target A looks like to: target A Job before Loop { antcall B } MyTask{getReference X} What I may do is to create my own 'call' task that calls a target in the same project (as depends attribute does I guess). Is it a good idea ? > Option (2) use a Map as your global storage and set this one as > reference before invoking antcall (with inheritrefs=true) and have > MyTask not set the reference in the project, but add it to your global > storage. I will try that also. > This also requires you Map to be not Cloneable since otherwise B will > only see a copy of your global storage and be unable to write to it. > Ant tries its best to make it hard for "subbuilds" to affect their > "parent build". Yes, I understand that perfectly. Regards -- Yves Martin --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]