繁体   English   中英

从MSBuild删除文件夹

[英]Remove folder from MSBuild

我正在尝试使用MSBuild脚本从构建中删除文件夹(嗯,实际上,我认为删除其中的文件更容易)。

我以为是从复制任务本身中删除它们,但是我一直认为很简单,认为它不起作用(我确定是因为我对这些东西不太了解,请昨天阅读文档,然后今天)。 这是我尝试删除具有此空间的文件夹(或其中的文件).. App_Data / Email模板的方法(该空间有事吗?)。

<ItemGroup>
  <SourceRootFiles Include="$(BuildFolder)/**/*.*" Exclude="$(BuildFolder)/**/App_Data/Email Templates/*.*">
  </SourceRootFiles>
</ItemGroup>

<Target Name="PrepareBuild" DependsOnTargets="CleanUp">
  <Message Text="Preparing the build directory : $(LocalBuild)"></Message>
  <MakeDir Directories="$(LocalBuild)" />

  <Copy SourceFiles="@(SourceRootFiles)" DestinationFolder="$(LocalBuild)\%(RecursiveDir)">
  </Copy>
  <Exec Command="FOR /r &quot;$(LocalBuild)&quot; %%f IN (.svn) DO RD /s /q &quot;%%f&quot;" IgnoreExitCode="true" />
</Target>

<Target Name="Build" DependsOnTargets="PrepareBuild">
  <MSBuild Projects="$(LocalBuild)\Getting.sln" />
</Target>

更新。

詹金斯提出了这个错误

:\\ Program Files \\ MSBuild \\ Microsoft \\ VisualStudio \\ v10.0 \\ Web \\ Microsoft.Web.Publishing.targets(1852,5):错误:将文件App_Data \\ Email Templates \\ BuyerRegistrationComplete.htm复制到obj \\ Latest \\ Package \\ PackageTmp \\ App_Data \\ Email模板\\ BuyerRegistrationComplete.htm失败。 找不到路径“ App_Data \\ Email Templates \\ BuyerRegistrationComplete.htm”的一部分。 [C:\\ Builds \\ Getting \\ Latest \\ Build \\ Web \\ UI \\ UI.csproj]

真的不知道它是否在取代

在githup上,有一个名为MsBuildTasks的项目,其中包含可以轻松集成到项目中的各种自定义操作

https://github.com/loresoft/msbuildtasks

从您的更新讲述了一个“新”故事。

在您的项目文件中,您引用Web部署要复制到部署的App_Data文件夹中的文件。 删除App_Data会导致文件丢失,从而导致失败。 将这些文件移动到项目中的另一个位置,或者删除对这些文件的引用。

我的建议是为模板创建一个单独的文件夹,App_Data具有不同的用途。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM