csproj中引用的程序集不会复制到输出目录
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了csproj中引用的程序集不会复制到输出目录相关的知识,希望对你有一定的参考价值。
<ItemGroup>
<Reference Include="Microsoft.WindowsAzure.Configuration">
<HintPath>..Microsoft.WindowsAzure.Configuration.dll</HintPath>
<Private>true</Private>
</Reference>
<Reference Include="Microsoft.WindowsAzure.Storage">
<HintPath>..Microsoft.WindowsAzure.Storage.dll</HintPath>
<Private>true</Private>
</Reference>
</ItemGroup>
原因是因为我不希望all assemblies from all .NET Core to get copied到我的输出文件夹。
现在在Visual Studio中将Copy Local
设置为Yes
等于<Private>true</Private>
文件中的csproj
。
问题是,这些DLL文件没有被复制到输出目录。更令人恼火的是,我已经将相同的代码行添加到类似的项目中,并且只有一个文件被复制到输出中。
这可能是什么问题?我该如何调试?我确保这些文件存在且它们的相对路径是正确的。
这可能是什么问题?我该如何调试?我确保这些文件存在且它们的相对路径是正确的。
根据你的描述,我用目标框架Console App (.NET Core)
创建了一个.net core 2.0
,将你的代码片段添加到.csproj
文件中。所有Dll文件都复制到输出目录,没有任何错误。
要调试此问题,我建议您可以仔细检查Dll文件的相对路径(虽然您已确定)和输出路径:
要仔细检查Dll文件的相对路径:
由于您直接将dll文件引用到项目中,因此可以检查程序集是否存在黄色警告符号:
为确保相对路径正确,我们可以手动添加dll文件:右键单击Dependencies
-> Add reference
-> Browse
->选择dll文件并添加它。
输出路径:
.net核心项目的默认输出路径应为:binDebug
etcoreapp2.0
。当您将Copy Local
设置为Yes
时,dll文件将复制到文件夹binDebug
etcoreapp2.0
。如果dll文件没有复制到该文件夹,请检查项目的输出路径:Properties-> Build-> Output path。
如果以上信息也没有帮助您调试此问题,请分享更多信息给我们,例如,项目类型,.csproj
文件或此项目的任何其他特殊设置。
以上是关于csproj中引用的程序集不会复制到输出目录的主要内容,如果未能解决你的问题,请参考以下文章