首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MSBuild包任务-网站部署

MSBuild包任务-网站部署
EN

Stack Overflow用户
提问于 2010-10-19 05:00:16
回答 2查看 2K关注 0票数 0

根据这篇博客文章,我正在尝试将自定义文件添加到我们的web部署包中:http://sedodream.com/2010/05/01/WebDeploymentToolMSDeployBuildPackageIncludingExtraFilesOrExcludingSpecificFiles.aspx

代码语言:javascript
复制
  <Target Name="CustomCollectFiles">
    <Message Text="AppBuildFolder = $(AppBuildFolder)"/>
    <ItemGroup>
      <_CustomFiles Include="..\*Repository*\**\*.dll;..\*Repository*\**\*.pdb" Condition="'$(AppBuildFolder)' == ''" />
      <_CustomFiles Include="$(AppBuildFolder + '*.dll');$(AppBuildFolder + '*.pdb')" Condition="'$(AppBuildFolder)' != ''" />
      <FilesForPackagingFromProject Include="%(_CustomFiles.Identity)">
        <DestinationRelativePath>bin\%(Filename)%(Extension)</DestinationRelativePath>
      </FilesForPackagingFromProject>
    </ItemGroup>
    <Message Text="Files found: @(_CustomFiles)"/>
  </Target>

我们在AppBuildFolder上有一些其他的引用,我们需要将它们复制到包中,但我在消息中从未看到任何文件输出。有什么想法吗?

谢谢安迪

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-10-19 23:38:57

好的,所以问题是这样的。我们使用Nant的MsBuild任务来构建Web Deploy项目。

显然,当像这样调用任务时:

代码语言:javascript
复制
<msbuild>
  <property name="AppBuildFolder" value="${Some.Path.Ending.In.Backslash}" />
</msbuild>

MsBuild的最终值为c:\myfolder"。注意末尾的双引号,而不是c:\myfolder\

修复方法是使用<arg />元素更改<property />并传递该值。

所以,问题出在NantContrib中的MsBuild任务。

希望这能节省别人的时间。

票数 1
EN

Stack Overflow用户

发布于 2010-10-19 08:21:22

您缺少将该目标注入到构建中的PropertyGroup。你也应该包括这一点,我怀疑这个目标没有执行,所以它们永远不会被添加。此外,你可能想要密切关注我的博客,因为有一个更简单的方法,当我有时间的时候,我会很快把它写出来。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3963353

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档