在 CacheManager.Core 中找不到版本为 1.0.1 的包 C:\Users\username\.nuget\packages\. 运行 NuGet 包还原以下载包。
但我的项目在 D: 驱动器中。除了这个包的错误之外,所有其他包都很好。这是packages.config的快照
<packages>
<package id="CacheManager.Core" version="1.0.1" targetFramework="net462" />
<package id="Castle.Core" version="3.3.3" targetFramework="net462" />
<package id="Castle.Windsor" version="3.3.0" targetFramework="net462" />...
实际上,这些包都在提到的 C:\Users\username.nuget\packages\ 和项目文件位置
小智 7
在我们的例子中,创建了以下文件:
obj/LcWebServerExtension.csproj.nuget.cache
obj/LcWebServerExtension.csproj.nuget.g.props
obj/LcWebServerExtension.csproj.nuget.g.targets
obj/project.assets.json
Run Code Online (Sandbox Code Playgroud)
.g.props 文件仅列出了C:\Users\...目录,没有其他正确配置的目录。
您需要两个步骤来解决该问题:
将 .csproj 文件的 ToolsVersion 从“15”设置回“12”。右外观:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import ...
Run Code Online (Sandbox Code Playgroud)
手动删除obj/文件夹,然后重建
我在 vs2019 中构建项目时遇到了同样的错误,尽管包名称和用户配置文件与你的不同。
碰巧我曾在一个配置文件 userA 下工作过一个项目,后来被删除了。因此,当我在配置文件 userB 下构建项目时,会弹出错误:
“在 C:\Users\userA\.nuget\packages 中找不到版本 6.1.3 的包 EntityFramework。运行 NuGet 包还原来下载该包。”
我试图通过恢复软件包并修改 nuget 配置来解决这个问题,但没有成功。最后,我删除了VS2019生成的所有文件,这些文件被.gitignore文件隐藏。然后恢复包后问题就解决了。
我认为该错误是由位于 .vs 文件夹中的 .dtbcache 文件引起的: $\Solution\.vs\ProjectName\DesignTimeBuild\.dtbcache.v2
该文件存储nuget包信息。当我切换到另一个用户配置文件后,它已经过时了,因为 nuget 包路径没有更新。
在 Stack Overflow 上有一个关于 .dtbcache 文件的讨论: .dtbcache 文件有什么作用?
GitHub 上有一个类似的问题: https ://github.com/dotnet/project-system/issues/5418
这个问题是两年前提出的,可能已经解决了。但我正在回答以防其他人遇到这个问题。希望我的评论会有帮助。
| 归档时间: |
|
| 查看次数: |
1368 次 |
| 最近记录: |