构建dotnet core:请运行"dotnet restore"生成新的锁文件
Building dotnet core: Please run "dotnet restore" to generate a new lock file
我的解决方案中有多个项目。我正在尝试为我的构建服务器创建构建定义。我的核心项目不依赖于以下 project.json:
{
"version": "1.0.0-*",
"frameworks": {
"netcoreapp1.0": {}
},
"dependencies": {
"Microsoft.NETCore.App": {
"version": "1.0.0",
"type": "platform"
},
"Microsoft.EntityFrameworkCore.SqlServer": "1.0.1"
}
}
我正在尝试恢复然后构建此项目,但它抱怨与它无关的其他项目。
还原
PS C:\Program Files (x86)\TeamCity\buildAgent\workc13246440f9a264\src\Compas.Core> dotnet restore
log : Restoring packages for C:\Program Files (x86)\TeamCity\buildAgent\workc13246440f9a264\src\Compas.Core\project.json...
log : Writing lock file to disk. Path: C:\Program Files (x86)\TeamCity\buildAgent\workc13246440f9a264\src\Compas.Core\project.lock.json
log : C:\Program Files (x86)\TeamCity\buildAgent\workc13246440f9a264\src\Compas.Core\project.json
log : Restore completed in 2071ms.
建造
PS C:\Program Files (x86)\TeamCity\buildAgent\work\e5c291e45d6e2691\src\Compas.Core> dotnet build
Project Microsoft.Extensions.Caching.Abstractions does not have a lock file. Please run "dotnet restore" to generate a new lock file.
Project Microsoft.Extensions.Caching.Abstractions does not have a lock file. Please run "dotnet restore" to generate a new lock file.
我的解决方案中有 "Microsoft.Extensions.Caching.Abstractions",但为什么构建 Core 需要那个锁文件。
您的项目依赖于 Microsoft.EntityFrameworkCore.SqlServer
,后者又依赖于 Microsoft.Extensions.Caching.Abstractions
(不是直接的,而是在树的后面)。由于您的解决方案中有该项目 - 可能是因为您在 global.json 中有一个引用 - 它会尝试使用该项目而不是 NuGet 包。
但是,要使项目引用正常工作,它需要一个 project.lock.json
,因此它会抱怨恢复项目的包。
从您的解决方案中删除该项目(我想知道为什么它首先在那里)或确保其包已恢复。
我的解决方案中有多个项目。我正在尝试为我的构建服务器创建构建定义。我的核心项目不依赖于以下 project.json:
{
"version": "1.0.0-*",
"frameworks": {
"netcoreapp1.0": {}
},
"dependencies": {
"Microsoft.NETCore.App": {
"version": "1.0.0",
"type": "platform"
},
"Microsoft.EntityFrameworkCore.SqlServer": "1.0.1"
}
}
我正在尝试恢复然后构建此项目,但它抱怨与它无关的其他项目。
还原
PS C:\Program Files (x86)\TeamCity\buildAgent\workc13246440f9a264\src\Compas.Core> dotnet restore
log : Restoring packages for C:\Program Files (x86)\TeamCity\buildAgent\workc13246440f9a264\src\Compas.Core\project.json...
log : Writing lock file to disk. Path: C:\Program Files (x86)\TeamCity\buildAgent\workc13246440f9a264\src\Compas.Core\project.lock.json
log : C:\Program Files (x86)\TeamCity\buildAgent\workc13246440f9a264\src\Compas.Core\project.json
log : Restore completed in 2071ms.
建造
PS C:\Program Files (x86)\TeamCity\buildAgent\work\e5c291e45d6e2691\src\Compas.Core> dotnet build
Project Microsoft.Extensions.Caching.Abstractions does not have a lock file. Please run "dotnet restore" to generate a new lock file.
Project Microsoft.Extensions.Caching.Abstractions does not have a lock file. Please run "dotnet restore" to generate a new lock file.
我的解决方案中有 "Microsoft.Extensions.Caching.Abstractions",但为什么构建 Core 需要那个锁文件。
您的项目依赖于 Microsoft.EntityFrameworkCore.SqlServer
,后者又依赖于 Microsoft.Extensions.Caching.Abstractions
(不是直接的,而是在树的后面)。由于您的解决方案中有该项目 - 可能是因为您在 global.json 中有一个引用 - 它会尝试使用该项目而不是 NuGet 包。
但是,要使项目引用正常工作,它需要一个 project.lock.json
,因此它会抱怨恢复项目的包。
从您的解决方案中删除该项目(我想知道为什么它首先在那里)或确保其包已恢复。