繁体   English   中英

.NETStandard库nuget软件包-无法安装在标准项目上

[英].NETStandard Library nuget package - cannot install on standard project

我有带有以下project.json .NET Core项目:

{
  "version": "1.0.0-*",

  "dependencies": {
    "NETStandard.Library": "1.6.0"
  },

  "frameworks": {
    "netstandard1.6": {
      "imports": "dnxcore50"
    }
  },

  "scripts": {
    "postcompile": [
      "dotnet pack --no-build --configuration %compile:Configuration%"
    ]
  }
}

我创建NuGet包(见postcompile以上)和出版的NuGet。

然后,我创建了标准的4.6.2库,但是无法安装软件包-软件包不包含目标.NET Framework 4.6.2的有效程序集的错误。

我应该如何准备nuget软件包以使其在标准库中可用? 尽管目标NETStandard对核心项目和标准项目均有效。

如果检查.Net Standard的兼容性矩阵,则看起来.Net 4.6.2仅支持NetStandard 1.5。 在框架下,您将目标标记为vNext的1.6。

有关兼容性矩阵,请参见此处,以了解您应该定位的版本

因此,换句话说,如果将配置更改为以下内容,则应该可以自由引用该库:

"frameworks": 
{
    "netstandard1.5": {}
}

您无需添加其他答案中建议的其他框架类型,因为4.6.2应该能够引用1.5标准。

您应该能够通过在project.json中添加“ net462”来添加对.Net Framework 4.6.2的支持:

{
  "version": "1.0.0-*",

  "dependencies": {
    "NETStandard.Library": "1.6.0"
  },

  "frameworks": {
    "netstandard1.6": {
      "imports": "dnxcore50"
    },
    "net462": {
        "dependencies" : {
            "System.Runtime": "4.0.20.0" // you may have to add this
            // add here your dependencies
        }
    }
  },

  "scripts": {
    "postcompile": [
      "dotnet pack --no-build --configuration %compile:Configuration%"
    ]
  }
}

另请参阅我在github上的project.json和一些受支持的框架

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM