下面是在windows build环境中工作的自定义内联任务:
<UsingTask
TaskName="Name"
TaskFactory="CodeTaskFactory"
AssemblyFile="C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Build.Tasks.v4.0.dll">
<ParameterGroup>
...
</ParameterGroup>
<Task>
<Code Type="Fragment" Language="cs">
...
</Code>
</Task>
</UsingTask>我希望它也能与xbuild一起工作。这显然是行不通的,因为路径是特定于windows的,所以我也尝试使用AssemblyName="Microsoft.Build.Tasks",它也没有工作。
那么,我应该如何在我的自定义任务中引用Microsoft.Build.Tasks,使之既适用于msbuild,也适用于xbuild?
发布于 2016-06-16 20:00:08
使用AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v12.0.dll"解决了这个问题。
看起来,根据运行平台的不同,$(MSBuildToolsPath)被设置为任何适当的东西,所以它总是可以工作的。另外,我还必须使用v12.0,特别是v4.0不起作用。
https://stackoverflow.com/questions/37864554
复制相似问题