gpt4 book ai didi

msbuild - 在目标上为 MSBUILD 找到正确的目录 removedir

转载 作者:行者123 更新时间:2023-12-02 03:17:54 24 4
gpt4 key购买 nike

在目标上为 MSBUILD 找到正确的目录

你好,

我试图在完成构建后远程清除我网站上 .pubxml 文件中的“imagecache”文件夹。问题是,当我通过 Web 部署运行发布到远程服务器时这样做时,我收到以下错误:

目录“App_Data/images/imagecache/w-400”不存在。跳过。

这是我当前的构建脚本:

  <PropertyGroup>
<WebPublishMethod>MSDeploy</WebPublishMethod>
<LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
<LastUsedPlatform>Any CPU</LastUsedPlatform>
<SiteUrlToLaunchAfterPublish>mysite.com</SiteUrlToLaunchAfterPublish>
<LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
<ExcludeApp_Data>False</ExcludeApp_Data>
<MSDeployServiceURL>NotRealServer</MSDeployServiceURL>
<DeployIisAppPath>mysite.com</DeployIisAppPath>
<RemoteSitePhysicalPath />
<SkipExtraFilesOnServer>True</SkipExtraFilesOnServer>
<MSDeployPublishMethod>WMSVC</MSDeployPublishMethod>
<EnableMSDeployBackup>True</EnableMSDeployBackup>
<UserName>UserNameHere</UserName>
<_SavePWD>True</_SavePWD>
</PropertyGroup>

<Target Name="AfterBuild">
<RemoveDir Directories="App_Data/images/imagecache/w-400"/>
</Target>

我也尝试了以下方法,但无济于事。我不确定如何为 MSBuild 提供我需要删除的远程 Web 服务器上的目录。

<RemoveDir Directories="$( DeployIisAppPath)/App_Data/images/imagecache/w-400"/>

<RemoveDir Directories="/App_Data/images/imagecache/w-400"/>

感谢您的宝贵时间。

最佳答案

这取决于您的网络发布的配置方式。

如果您要发布到文件共享,请使用 UNC 路径。如果您要发布到 FTP,则 MSBuild 将无法访问该文件夹。

下面是 UNC 共享上的 RemoveDir 任务示例。

<RemoveDir Directories="\\Server\Share\folder" Condition="Exists('\\Server\Share\folder')" ContinueOnError="WarnAndContinue"/>

我在上面输入的ConditionContinueOnError 属性不是必需的,但它们是个好主意。如果文件夹不存在,则此任务配置 RemoveDir 的方式将被跳过;如果文件夹存在且出现错误,任务将发出警告,构建过程将继续。

关于msbuild - 在目标上为 MSBUILD 找到正确的目录 removedir,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35484669/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com