在TFS

时间:2016-06-23 21:40:24

标签: msbuild symlink tfs2015 post-build-event mklink

我的.csproj在.csproj文件中定义了以下post build事件,用于重新生成符号链接。这可以在手动Visual Studio构建中正常工作,并且符号链接可以重新生成而不会出现问题:

 <PostBuildEvent>
  del C:\foo\foo\bin\debug\my.config
  mklink C:\bar\bar\bar\bar\bar\bar\bin\debug\my.config c:\baz\baz\my.config  
</PostBuildEvent>

但是,我正在尝试使用TFS2015与使用MSBuild的自动构建建立持续集成,但是在这种情况下,构建失败,命令为mklink C:\ bar \ bar \ bar \ bar \ bar \ bar \ bin \ debug \ my.config c:\ baz \ baz \ my.config退出,代码为1&#39;。

如何通过自动构建重新生成符号链接?

1 个答案:

答案 0 :(得分:1)

我通过以下方式在csproj文件中将变量$(BuildingInsideVisualStudio)设置为true来解决这个问题:

<PropertyGroup Condition="'$(BuildingInsideVisualStudio)' == 'true'">
    <PostBuildEvent>
       del C:\foo\foo\bin\debug\my.config
       mklink C:\bar\bar\bar\bar\bar\bar\bin\debug\my.config c:\baz\baz\my.config  
    </PostBuildEvent>
</PropertyGroup>

我在其他地方看到这是一个可能的答案,但我看到的帖子显示错误的语法,并没有清楚地说明如何在csproj构建脚本的上下文中使用该变量。希望这会为某人澄清。

这篇MSDN文章很有用: https://msdn.microsoft.com/en-us/library/ms171468(v=vs.140).aspx

相关问题