构建时出错 AspNet.Security.OpenIdConnect.Server

Error building AspNet.Security.OpenIdConnect.Server

我正在尝试构建 AspNet.Security.OpenIdConnect.Server,但出现以下错误:

.NETStandard,Version=v1.3 error NU1002: The dependency System.Security.Cryptography.OpenSsl 4.0.0-rc3-23911 in project AspNet.Security.OpenIdConnect.Server does not support framework .NETStandard,Version=v1.3.

如果我在 projects.json 中删除对 netstandard1.3 的引用,则项目构建没有错误。

我在 Windows 上使用最新的不稳定 DNX (1.0.0-rc2-16595)。

谁能帮我弄清楚发生了什么事?

在此致问候和感谢!

您看到的错误可能是由于某些 CoreFX Crypto 软件包最近更新为需要 netstandard1.4 而不是 dotnet5.4/netstandard1.3:

4.0.0-rc3-23911:

<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2013/01/nuspec.xsd">
  <metadata minClientVersion="3.4">
    <id>System.Security.Cryptography.OpenSsl</id>
    <version>4.0.0-rc3-23911</version>
    <title>System.Security.Cryptography.OpenSsl</title>
    <authors>Microsoft</authors>
    <owners>microsoft,dotnetframework</owners>
    <licenseUrl>http://go.microsoft.com/fwlink/?LinkId=329770</licenseUrl>
    <iconUrl>http://go.microsoft.com/fwlink/?LinkID=288859</iconUrl>
    <requireLicenseAcceptance>true</requireLicenseAcceptance>
    <description>Provides cryptographic algorithm implementations and key management for non-Windows systems with OpenSSL.

Commonly Used Types:
System.Security.Cryptography.RSAOpenSsl
 \r\n TFS ID: 1583883, GitHub SHA: https://github.com/dotnet/corefx/tree/3cabb976e023a5fb43143f47cfbceca60c0268a5</description>
    <copyright>© Microsoft Corporation.  All rights reserved.</copyright>
    <tags></tags>
    <dependencies>
      <group targetFramework=".NETStandard1.4">
        <dependency id="runtime.native.System.Security.Cryptography" version="[4.0.0-rc3-23911, )" />
        <dependency id="System.Collections" version="[4.0.11-rc3-23911, )" exclude="Compile" />
        <dependency id="System.IO" version="[4.0.11-rc3-23911, )" />
        <dependency id="System.Resources.ResourceManager" version="[4.0.1-rc3-23911, )" exclude="Compile" />
        <dependency id="System.Runtime" version="[4.0.21-rc3-23911, )" />
        <dependency id="System.Runtime.Extensions" version="[4.0.11-rc3-23911, )" exclude="Compile" />
        <dependency id="System.Runtime.Handles" version="[4.0.1-rc3-23911, )" />
        <dependency id="System.Runtime.InteropServices" version="[4.0.21-rc3-23911, )" exclude="Compile" />
        <dependency id="System.Runtime.Numerics" version="[4.0.1-rc3-23911, )" exclude="Compile" />
        <dependency id="System.Security.Cryptography.Algorithms" version="[4.1.0-rc3-23911, )" />
        <dependency id="System.Security.Cryptography.Encoding" version="[4.0.0-rc3-23911, )" exclude="Compile" />
        <dependency id="System.Security.Cryptography.Primitives" version="[4.0.0-rc3-23911, )" />
        <dependency id="System.Text.Encoding" version="[4.0.11-rc3-23911, )" exclude="Compile" />
      </group>
    </dependencies>
  </metadata>
</package>

4.0.0-rc2-23826:

<?xml version="1.0"?>
<package xmlns="http://schemas.microsoft.com/packaging/2013/01/nuspec.xsd">
  <metadata minClientVersion="3.4">
    <id>System.Security.Cryptography.OpenSsl</id>
    <version>4.0.0-rc2-23826</version>
    <title>System.Security.Cryptography.OpenSsl</title>
    <authors>Microsoft</authors>
    <owners>microsoft,dotnetframework</owners>
    <licenseUrl>http://go.microsoft.com/fwlink/?LinkId=329770</licenseUrl>
    <iconUrl>http://go.microsoft.com/fwlink/?LinkID=288859</iconUrl>
    <requireLicenseAcceptance>true</requireLicenseAcceptance>
    <description>Provides cryptographic algorithm implementations and key management for non-Windows systems with OpenSSL.

Commonly Used Types:
System.Security.Cryptography.RSAOpenSsl
 \r\n TFS ID: 1579044, GitHub SHA: https://github.com/dotnet/corefx/tree/dacca1618c0dbb266945d42e58b9584e7c72126c</description>
    <copyright>© Microsoft Corporation.  All rights reserved.</copyright>
    <dependencies>
      <group targetFramework=".NETPlatform5.4">
        <dependency id="runtime.native.System.Security.Cryptography" version="4.0.0-rc2-23826" />
        <dependency id="System.Collections" version="4.0.0" />
        <dependency id="System.IO" version="4.0.10" />
        <dependency id="System.Resources.ResourceManager" version="4.0.0" />
        <dependency id="System.Runtime" version="4.0.20" />
        <dependency id="System.Runtime.Extensions" version="4.0.10" />
        <dependency id="System.Runtime.Handles" version="4.0.0" />
        <dependency id="System.Runtime.InteropServices" version="4.0.20" />
        <dependency id="System.Runtime.Numerics" version="4.0.0" />
        <dependency id="System.Security.Cryptography.Algorithms" version="4.0.0-rc2-23826" />
        <dependency id="System.Security.Cryptography.Encoding" version="4.0.0-rc2-23826" />
        <dependency id="System.Security.Cryptography.Primitives" version="4.0.0-rc2-23826" />
        <dependency id="System.Text.Encoding" version="4.0.10" />
      </group>
      <group targetFramework="MonoAndroid1.0" />
      <group targetFramework="MonoTouch1.0" />
      <group targetFramework=".NETFramework4.6" />
      <group targetFramework=".NETCore5.0" />
      <group targetFramework="Xamarin.iOS1.0" />
      <group targetFramework="Xamarin.Mac2.0" />
    </dependencies>
  </metadata>
</package>

这不会影响我们的构建,因为我们只使用 aspnetcidev 提要(还没有 CoreFX RC3 包),但您可能使用 dotnet-core 提要下载了一个项目最近,这导致 RC3 包在您的全局包存储中持久存在 (.nuget\packages)。

要临时解决此问题,您可以重新定位 ASOS 以使用 netstandard1.4 或擦除您的 .nuget\packages 文件夹并使用 RC2 包。