项目 'XXXXXX' 没有锁定文件。请运行"dotnet restore"以生成新的锁定文件



我有ASP.NET Core Web API项目和.Net Core Library项目。Web API引用库项目为target : project。库工程名称为Transformations
下面是项目。

项目。

"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"
},

项目。

{
  "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:JenkinsMyJenkinsProjectworkspacesrcMySolution
                                                   Api
                                                   Transformation
在构建服务器上,我执行了以下命令
  D:JenkinsMyJenkinsProjectworkspacesrcMySolutionApi>dotnet restore

  D:JenkinsMyJenkinsProjectworkspacesrcMySolutionApi>dotnet build

I get error

Project Transformations没有锁文件。请运行"dotnet restore"生成新的锁文件。

现在如果我按顺序运行下面的命令,那么一切都运行正常。

  D:JenkinsMyJenkinsProjectworkspacesrcMySolutionTransformation>dotnet restore
  D:JenkinsMyJenkinsProjectworkspacesrcMySolutionApi>dotnet restore
  D:JenkinsMyJenkinsProjectworkspacesrcMySolutionApi>dotnet build


1>当库在API项目中被引用为项目时,为什么我需要为库项目单独运行dotnet restore ?为什么restores不能隐式引用项目?

From Zlatko Knezevic:

这个行为是设计出来的。如果您希望一次恢复所有项目的所有依赖关系,可以这么说,只需在解决方案的根(您拥有global.json文件的地方)运行dotnet restore

我相信你可以直接做一个dotnet build。它应该自动做一个dotnet restore

相关内容

  • 没有找到相关文章

最新更新