我正在尝试开始利用MSBuild Community Tasks
,因此我在.msi
元素中导入了MSBuild.Community.targets
这个方法之后就这样了:< / p>
<Project>
有趣的是,我注意到这样的文件引用了<Import Project="lib\MSBuild.Community.Tasks.targets" />
中的本地安装路径,并且考虑到代替保持代码依赖性尽可能干净,我愿意支付分发/版本化它们的开销。对于每个项目,我都想知道是否可以使用MSBuildExtensionsPath
文件中与项目相关的位置覆盖默认/安装位置?
实际布局如下:
.cproj
任何指导都将得到真诚的感谢。非常感谢你提出任何你想要分享的建议。
答案 0 :(得分:7)
在 MSBuild.Community.Tasks.targets 中指定了dll的路径。
<PropertyGroup>
<MSBuildCommunityTasksPath Condition="'$(MSBuildCommunityTasksPath)' == ''">$(MSBuildExtensionsPath)\MSBuildCommunityTasks</MSBuildCommunityTasksPath>
<MSBuildCommunityTasksLib>$(MSBuildCommunityTasksPath)\MSBuild.Community.Tasks.dll</MSBuildCommunityTasksLib>
</PropertyGroup>
您可以覆盖项目中的路径。
<PropertyGroup>
<MSBuildCommunityTasksPath>lib</MSBuildCommunityTasksPath>
</PropertyGroup>
并保持导入相同:
<Import Project="lib\MSBuild.Community.Tasks.targets" />