我们有一个名为 WWW 的项目,它引用了同一解决方案中名为 Framework 的另一个项目。
框架使用 Nuget,它依赖于另一个名为 iSynaptic 的 Nuget 包。
Framework.csproj xml 说:
<Private>true</Private>
和 Visual Studio UI 说
Copy Local = True.
但是,当我重建解决方案时,WWW/bin 不包含 iSynaptic.Core 的 dll。
这是参考的完整xml:
<Reference Include="iSynaptic.Core">
<HintPath>..\packages\iSynaptic.Core.0.1.3\lib\iSynaptic.Core.dll</HintPath>
<Private>true</Private>
</Reference>
在区分大小写的情况下,我还尝试了排列:真、真和真
此外,我尝试在 Framework 中添加一个虚拟类文件,该文件明确使用 iSynapticCore.dll 中的类
using iSynaptic;
using iSynaptic.Core;
namespace Framework.Bootstrap
{
public static class Dummy
{
public static int GetCode()
{
return iSynaptic.HashCode.MixJenkins32(0);
}
}
}
我找到了创建从 dll 继承类的类的示例。但不幸的是,iSynaptic.Core 中没有一个类是公开的。
我还尝试通过 Visual Studio 删除和重新添加引用以及手动重新添加 xml。
我还尝试使用 Visual Studio 将 Copy Local 设置为 false,然后保存,然后将 Copy Local 设置回 true,然后保存。
我检查了 GAC 并且程序集未加载到 GAC 中
我尝试从命令行通过 Visual Studio 2012 和 MSBuild 进行构建:
%windir%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe /target:Clean,Rebuild
有什么想法可能导致 dll 在构建时无法复制到 WWW/bin 输出目录?