我有一个.NET解决方案,其中一些项目在Visual Studio 2015中运行。我正在通过NuGet处理一些外部库。
NuGet包位于packages
文件夹中。如果我删除packages
文件夹并使用VS或命令行msbuild重建,则packages
文件夹将在此类层次结构中恢复:packages\Csv.2.0.0.0\lib\Csv.dll
。文件夹缺少框架,整个解决方案的引用都是在没有框架文件夹的情况下创建的。
如果我的同事构建了相同的项目,NuGet会使用框架文件夹恢复相同的包,例如packages\Csv.2.0.0.0\lib\net40\Csv.dll
,并且他的引用失败。如果我们手动运行恢复,也会发生同样的事情:nuget restore mysolution.sln
导致此问题的原因是什么?我们如何解决?据我所知,框架文件夹应该始终存在。我们的源代码是一样的,VS版本是一样的,nuget.config文件是一样的,nuget.exe版本是一样的(3.4.4.1321)。
答案 0 :(得分:0)
我通过删除我的一个软件包解决了问题(原来并不是真的需要)。由于只有一个软件包导致了这个问题,我想原来的问题与软件包的配置或者它们在我们的nuget中的添加方式有关。
无论如何,问题解决了。其他包也可以。