[Mono-list] XBuild question removing directories

Jonathan Pobst monkey at jpobst.com
Thu Dec 22 01:33:24 EST 2011


The good news is this has been fixed:
https://github.com/mono/mono/commit/7c4e3654cb758d2f8543a4d8b0b4d5b25af780c3

The bad news is that probably doesn't help you.

I was writing my own tasks, so I just included the updated source code 
in my assembly and called it RemoveDirFixed.  Not sure if you have the 
same luxury.

Jonathan


On 12/22/2011 12:20 AM, Mike Christensen wrote:
> I have the following target:
>
>    <Target Name="Clean">
>      <RemoveDir Directories="$(BuildDir)" Condition=" Exists('$(BuildDir)') " />
>      <RemoveDir Directories="Imp/bin" Condition=" Exists('Imp/bin') " />
>      <RemoveDir Directories="Imp/obj" Condition=" Exists('Imp/obj') " />
>      <RemoveDir Directories="Modeler/bin" Condition=" Exists('Modeler/bin') " />
>      <RemoveDir Directories="Modeler/obj" Condition=" Exists('Modeler/obj') " />
>      <RemoveDir Directories="Queue/bin" Condition=" Exists('Queue/bin') " />
>      <RemoveDir Directories="Queue/obj" Condition=" Exists('Queue/obj') " />
>      <RemoveDir Directories="WebSite/bin" Condition=" Exists('WebSite/bin') " />
>      <RemoveDir Directories="WebSite/obj" Condition=" Exists('WebSite/obj') " />
>    </Target>
>
> When I run it I get:
>
>
> ~/KitchenPC>  ./clean
> XBuild Engine Version 2.10.6.0
> Mono, Version 2.10.6.0
> Copyright (C) Marek Sieradzki 2005-2008, Novell 2008-2011.
> /Users/mike/kitchenpc/build.xml: error : Directory
> /Users/mike/KitchenPC/Build is not empty  at
> System.IO.Directory.Delete (System.String path) [0x00000] in<filename
> unknown>:0
>    at Microsoft.Build.Tasks.RemoveDir.Execute () [0x00000] in<filename
> unknown>:0
> /Users/mike/kitchenpc/build.xml: error : Directory
> /Users/mike/KitchenPC/Imp/bin is not empty  at
> System.IO.Directory.Delete (System.String path) [0x00000] in<filename
> unknown>:0
>    at Microsoft.Build.Tasks.RemoveDir.Execute () [0x00000] in<filename
> unknown>:0
> /Users/mike/kitchenpc/build.xml: error : Directory
> /Users/mike/KitchenPC/Imp/obj is not empty  at
> System.IO.Directory.Delete (System.String path) [0x00000] in<filename
> unknown>:0
>    at Microsoft.Build.Tasks.RemoveDir.Execute () [0x00000] in<filename
> unknown>:0
> /Users/mike/kitchenpc/build.xml: error : Directory
> /Users/mike/KitchenPC/Modeler/obj is not empty  at
> System.IO.Directory.Delete (System.String path) [0x00000] in<filename
> unknown>:0
>    at Microsoft.Build.Tasks.RemoveDir.Execute () [0x00000] in<filename
> unknown>:0
> /Users/mike/kitchenpc/build.xml: error : Directory
> /Users/mike/KitchenPC/Queue/bin is not empty  at
> System.IO.Directory.Delete (System.String path) [0x00000] in<filename
> unknown>:0
>    at Microsoft.Build.Tasks.RemoveDir.Execute () [0x00000] in<filename
> unknown>:0
> /Users/mike/kitchenpc/build.xml: error : Directory
> /Users/mike/KitchenPC/Queue/obj is not empty  at
> System.IO.Directory.Delete (System.String path) [0x00000] in<filename
> unknown>:0
>    at Microsoft.Build.Tasks.RemoveDir.Execute () [0x00000] in<filename
> unknown>:0
> /Users/mike/kitchenpc/build.xml: error : Directory
> /Users/mike/KitchenPC/WebSite/obj is not empty  at
> System.IO.Directory.Delete (System.String path) [0x00000] in<filename
> unknown>:0
>    at Microsoft.Build.Tasks.RemoveDir.Execute () [0x00000] in<filename
> unknown>:0
> ~/KitchenPC>
>
> On MSBuild, this works fine.  Is there a way to make it remove these
> directories without an error?  I suppose I could Exec a "rm -R -f" but
> I'd rather something that was cross-platform.  Thanks!
>
> Mike
> _______________________________________________
> Mono-list maillist  -  Mono-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-list
>
>



More information about the Mono-list mailing list