使用DotNet Core定位Net Standard创建的Azure WebJob失败,错误

时间:2016-10-06 08:49:40

标签: azure .net-standard webjob

我有一个dot net核心控制台应用程序,我想在Azure中作为webjob运行。当它试图执行时,我在日志中看到

错误:未找到依赖项清单中指定的程序集 - package:'Microsoft.DotNet.InternalAbstractions',version:'1.0.0',path:'lib / netstandard1.3 / Microsoft.DotNet.InternalAbstractions.dll “

我的project.json看起来像这样

{
  "buildOptions": {
    "emitEntryPoint": true,
    "copyToOutput": [ "appsettings.json", "run.cmd" ]
  },
  "dependencies": {
    "Helga.Core": "1.0.0-*",
    "Helga.UpdateParkings": "1.0.0-*",
    "Microsoft.Extensions.Configuration": "1.0.0",
    "Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0",
    "Microsoft.NETCore.App": {
      "type": "platform",
      "version": "1.0.1"
    }
  },
  "frameworks": {
    "netcoreapp1.0": {
      "imports": "dnxcore50"
    }
  },
  "publishOptions": {
    "include": [
      "appsettings.json",
      "run.cmd"
    ]
  },
  "version": "1.0.0-*"
}

但在project.lock.json中我看到了

  "Microsoft.DotNet.InternalAbstractions/1.0.0": {
    "type": "package",
    "dependencies": {
      "System.AppContext": "4.1.0",
      "System.Collections": "4.0.11",
      "System.IO": "4.1.0",
      "System.IO.FileSystem": "4.0.1",
      "System.Reflection.TypeExtensions": "4.1.0",
      "System.Runtime.Extensions": "4.1.0",
      "System.Runtime.InteropServices": "4.1.0",
      "System.Runtime.InteropServices.RuntimeInformation": "4.0.0"
    },
    "compile": {
      "lib/netstandard1.3/Microsoft.DotNet.InternalAbstractions.dll": {}
    },
    "runtime": {
      "lib/netstandard1.3/Microsoft.DotNet.InternalAbstractions.dll": {}
    }
  },

请建议。

1 个答案:

答案 0 :(得分:3)

我通过压缩bin / debug文件夹以及安装的sdk等中的构建引用程序集来进行部署。

当我将项目发布到文件系统并压缩PublishOutput文件夹时,所有内容都开始工作,因为所有依赖程序集都已复制到该文件夹​​。