如何设置输出子文件夹以在构建时将引用 dll 复制到
Posted
技术标签:
【中文标题】如何设置输出子文件夹以在构建时将引用 dll 复制到【英文标题】:How to set output subfolder to copy reference dll to on build 【发布时间】:2021-08-03 23:40:39 【问题描述】:项目引用 dll 在构建时复制到输出目录的根目录(如果在 .csproj
处为此引用设置了 <Private>True</Private>
,或者在 VisualStudio 的引用属性中将 Copy Local
设置为 True
)
我有一些第 3 方 dll 的 NuGet 包依赖项,并希望在构建时将此 dll 复制到输出目录的某个 子文件夹。如何做到这一点?
PS:我看过this 的问题。但是没有适合我的情况的答案。
【问题讨论】:
【参考方案1】:我没有找到更好的方法,只是让它们被复制到输出根目录,然后通过将此指令添加到 .csproj
将它们移动到我的子文件夹:
<!-- Move some dlls into /MySubfolder -->
<PropertyGroup>
<PrepareForRunDependsOn>$(PrepareForRunDependsOn);MyMoveDllsToOutputSubdir</PrepareForRunDependsOn>
</PropertyGroup>
<Target Name="MyMoveDllsToOutputSubdir">
<Move SourceFiles="$(OutDir)\Aaa.dll;$(OutDir)\Aaa.pdb" DestinationFolder="$(OutDir)\MySubfolder" />
</Target>
【讨论】:
以上是关于如何设置输出子文件夹以在构建时将引用 dll 复制到的主要内容,如果未能解决你的问题,请参考以下文章