为了账号安全,请及时绑定邮箱和手机立即绑定

如何获取 MSBuild 中所有引用 DLL 的路径?

如何获取 MSBuild 中所有引用 DLL 的路径?

C#
月关宝盒 2021-07-06 13:04:45
我想获取在.csproj给定以下要求中引用的所有程序集的路径:包括程序集,无论它们如何被引用(项目、nuget、直接.dll导入)不触发构建关于如何为项目参考做这件事有一个很好的答案:<MSBuild Projects="@(ProjectReference)" Targets="GetTargetPath">   <Output TaskParameter="TargetOutputs" ItemName="MyReferencedAssemblies" />   </MSBuild>是否有类似的方法来获取.dll所有其他类型引用的路径?
查看完整描述

2 回答

?
ITMISS

TA贡献1871条经验 获得超8个赞

似乎有一种干净的方法可以做到:


  <Target Name="GatherReferences" DependsOnTargets="ResolveReferences">

    <ItemGroup>

      <MyReferencedAssemblies Include="@(ReferencePath)" />

    </ItemGroup>

  </Target>

在该MyReferencedAssemblies项目组之后包含所有引用的 DLL(完整路径,所有类型)的集合。它也适用PackageReference于新.csproj格式的导入。重要的部分是@(ReferencePath)只有在ResolveReferences完成后才非空。


查看完整回答
反对 回复 2021-07-11
  • 2 回答
  • 0 关注
  • 227 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信