无法安装包。锁定文件没有改变,跳过锁定文件写入

时间:2017-08-09 08:04:48

标签: nuget visual-studio-2017

我正在尝试通过System.ComponentModel.Annotations管理员控制台安装VS 2017 package

命令:

Install-Package System.ComponentModel.Annotations -Version 4.3.0

结果

  

恢复包   C:\ MyTest.csproj ...   安装NuGet包System.ComponentModel.Annotations 4.3.0。   提交恢复...将锁文件写入磁盘。路径:   C:\ MyTest的\ OBJ \ project.assets.json   恢复在816.43 ms完成   C:\ MyTest.csproj。   恢复包   C:\ MyTest.csproj ...   提交恢复...锁定文件没有改变。跳过锁定文件   写。路径:   C:\ MyTest的\ OBJ \ project.assets.json   恢复在2.03秒完成   C:\ MyTest.csproj。   执行nuget动作需要4.12秒经过时间:00:00:05.2258592

注意:

我正在使用.NETCoreApp1.1框架。

2 个答案:

答案 0 :(得分:3)

  

无法安装包。锁定文件未更改,跳过锁定文件写入

当我恢复/更新该软件包时,我在输出窗口中也得到了相同的结果,但是在检查项目依赖项和项目文件(.csproj)后,我发现该软件包已经安装到项目中)。并且结果没有告诉安装失败,只是提示跳过锁定文件写:

  

恢复C:\ MyTest.csproj的包...提交恢复...锁定文件未更改。跳过锁定文件写入。

因此,仅当该软件包已安装到项目中时才会出现此消息。获得该日志后,应仔细检查项目引用,确保已安装该软件包。

答案 1 :(得分:0)

还应该检查项目的某些父目录中是否存在Directory.Build.targets文件,该文件定义了软件包的版本。如果是这种情况(我有这个问题),VS将忽略您安装的版本,并保留文件中定义的版本,因此您必须在那里更新版本。