gpt4 book ai didi

asp.net-core - 项目 'XXXXXX' 没有锁定文件。请运行 "dotnet restore"生成新的锁定文件

转载 作者:行者123 更新时间:2023-12-01 18:10:11 26 4
gpt4 key购买 nike

我有 ASP.NET Core Web API 项目和 .Net Core Library 项目。 Web API 将库项目引用为目标:项目。库项目的名称是Transformations
以下是两个项目的project.json

Web API 的project.json

"dependencies": {
"Microsoft.NETCore.App": {
"version": "1.0.0",
"type": "platform"
},
"Microsoft.ApplicationInsights.AspNetCore": "1.0.0",
"Microsoft.AspNetCore.Mvc": "1.0.0",
"Microsoft.AspNetCore.Server.IISIntegration": "1.0.0",
"Microsoft.AspNetCore.Server.Kestrel": "1.0.0",
"Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0",
"Microsoft.Extensions.Configuration.FileExtensions": "1.0.0",
"Microsoft.Extensions.Configuration.Json": "1.0.0",
"Microsoft.Extensions.Logging": "1.0.0",
"Microsoft.Extensions.Logging.Console": "1.0.0",
"Microsoft.Extensions.Logging.Debug": "1.0.0",
"Microsoft.Extensions.Options.ConfigurationExtensions": "1.0.0",
"Transformations": {
"target": "project"
},
"Microsoft.Extensions.DependencyInjection": "1.0.0",
"Serilog.Extensions.Logging": "1.3.0-dev-10125",
"Serilog.Sinks.RollingFile": "3.0.0",
"Serilog.Settings.Configuration": "2.1.0",
"Microsoft.AspNetCore.Diagnostics": "1.0.0"
},

图书馆项目的project.json

{
"version": "1.0.0-*",

"dependencies": {
"NETStandard.Library": "1.6.0",
"Microsoft.Extensions.Options.ConfigurationExtensions": "1.0.0"
},

"frameworks": {
"netstandard1.6": {
"imports": "dnxcore50"
}
},
"configurations": {
"Production": {},
"Staging": {}
}
}

下面的构建服务器上是 Api 和转换项目的项目结构。

 D:\Jenkins\MyJenkinsProject\workspace\src\MySolution
\Api
\Transformation

在构建服务器上我执行了以下命令

  D:\Jenkins\MyJenkinsProject\workspace\src\MySolution\Api>dotnet restore

然后

  D:\Jenkins\MyJenkinsProject\workspace\src\MySolution\Api>dotnet build

我收到错误

Project Transformations does not have a lock file. Please run "dotnet restore" to generate a new lock file.

现在,如果我按顺序运行以下命令,则一切正常。

  D:\Jenkins\MyJenkinsProject\workspace\src\MySolution\Transformation>dotnet restore
D:\Jenkins\MyJenkinsProject\workspace\src\MySolution\Api>dotnet restore
D:\Jenkins\MyJenkinsProject\workspace\src\MySolution\Api>dotnet build

问题
1>当API项目中将库引用为项目时,为什么我需要为库项目单独运行dotnet Restore?为什么它不能恢复隐式引用的项目?

最佳答案

From Zlatko Knezevic :

This behavior is by design. […] If you wish to restore all of the dependencies for all your projects in one go, so to speak, just run dotnet restore at the root of your solution (where you have the global.json file).

关于asp.net-core - 项目 'XXXXXX' 没有锁定文件。请运行 "dotnet restore"生成新的锁定文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39599379/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com