.NET core RID katalogu.NET Core RID Catalog

Identyfikatorów RID jest mała w przypadku identyfikator środowiska uruchomieniowego.RID is short for Runtime IDentifier. RID wartości są używane do identyfikowania platformy docelowe, w którym działa aplikacja.RID values are used to identify target platforms where the application runs. Są używane przez pakiety .NET do reprezentowania zasoby specyficzne dla platformy w pakietach NuGet.They're used by .NET packages to represent platform-specific assets in NuGet packages. Przykłady identyfikatorów RID są następujące wartości: linux-x64, ubuntu.14.04-x64, win7-x64, lub osx.10.12-x64.The following values are examples of RIDs: linux-x64, ubuntu.14.04-x64, win7-x64, or osx.10.12-x64. W przypadku pakietów zależności natywnych RID wyznacza platformy, na których można przywrócić pakietu.For the packages with native dependencies, the RID designates on which platforms the package can be restored.

Pojedynczy RID można ustawić w <RuntimeIdentifier> elementu z pliku projektu.A single RID can be set in the <RuntimeIdentifier> element of your project file. Wiele identyfikatorów RID mogą być definiowane jako rozdzielaną średnikami listę w pliku projektu <RuntimeIdentifiers> elementu.Multiple RIDs can be defined as a semicolon-delimited list in the project file's <RuntimeIdentifiers> element. Są również używane za pośrednictwem --runtime opcji z następujących poleceń interfejsu wiersza polecenia platformy .NET Core:They're also used via the --runtime option with the following .NET Core CLI commands:

Identyfikatorów RID, reprezentujące systemy operacyjne konkretnych zwykle skorzystaj z tego wzorca: [os].[version]-[architecture]-[additional qualifiers] gdzie:RIDs that represent concrete operating systems usually follow this pattern: [os].[version]-[architecture]-[additional qualifiers] where:

  • [os] jest krótkiej nazwy systemu operacyjnego i platformy.[os] is the operating/platform system moniker. Na przykład ubuntu.For example, ubuntu.

  • [version] jest to wersja systemu operacyjnego w formie oddzielone kropką (.) numer wersji.[version] is the operating system version in the form of a dot-separated (.) version number. Na przykład 15.10.For example, 15.10.

    • Wersja nie powinien marketingowych w wersjach, jak często reprezentują wielu dyskretnych wersji systemu operacyjnego ze zróżnicowanymi obszar powierzchni interfejsu API platformy.The version shouldn't be marketing versions, as they often represent multiple discrete versions of the operating system with varying platform API surface area.
  • [architecture] jest to architektura procesora.[architecture] is the processor architecture. Na przykład: x86, x64, arm, lub arm64.For example: x86, x64, arm, or arm64.

  • [additional qualifiers] możliwości rozróżniania różnych platformach.[additional qualifiers] further differentiate different platforms. Na przykład: aot lub corert.For example: aot or corert.

Wykres RIDRID graph

RID wykresu lub grafu rezerwowego środowisko uruchomieniowe znajduje się lista identyfikatorów RID, które są ze sobą zgodne.The RID graph or runtime fallback graph is a list of RIDs that are compatible with each other. Identyfikatorów RID są zdefiniowane w Microsoft.NETCore.Platforms pakietu.The RIDs are defined in the Microsoft.NETCore.Platforms package. Można wyświetlić listę obsługiwanych identyfikatorów RID i wykres RID runtime.json pliku, który znajduje się w repozytorium CoreFX.You can see the list of supported RIDs and the RID graph in the runtime.json file, which is located at the CoreFX repo. W tym pliku widać, że wszystkich identyfikatorów RID, z wyjątkiem dla nich podstawowy zawiera "#import" instrukcji.In this file, you can see that all RIDs, except for the base one, contain an "#import" statement. Te instrukcje wskazują zgodnych identyfikatorów RID.These statements indicate compatible RIDs.

Gdy NuGet przywraca pakietów, próbuje odnaleźć dokładnego dopasowania dla określonego środowiska uruchomieniowego.When NuGet restores packages, it tries to find an exact match for the specified runtime. Jeśli nie zostanie znalezione dokładne dopasowanie, NuGet przedstawia powrót wykresu do momentu znalezienia najbliższego zgodny system zgodnie z wykresu identyfikatorów RID.If an exact match is not found, NuGet walks back the graph until it finds the closest compatible system according to the RID graph.

Poniższy przykład jest to rzeczywiste zapis osx.10.12-x64 identyfikatorów RID:The following example is the actual entry for the osx.10.12-x64 RID:

"osx.10.12-x64": {
    "#import": [ "osx.10.12", "osx.10.11-x64" ]
}

Powyższe RID Określa, że osx.10.12-x64 importuje osx.10.11-x64.The above RID specifies that osx.10.12-x64 imports osx.10.11-x64. Tak, gdy NuGet przywraca pakietów, próbuje odnaleźć dokładnego dopasowania dla osx.10.12-x64 w pakiecie.So, when NuGet restores packages, it tries to find an exact match for osx.10.12-x64 in the package. Jeśli NuGet nie może odnaleźć określonego środowiska uruchomieniowego, przywracanie pakietów, które określają osx.10.11-x64 środowisk wykonawczych, na przykład.If NuGet cannot find the specific runtime, it can restore packages that specify osx.10.11-x64 runtimes, for example.

W poniższym przykładzie przedstawiono wykres RID nieco większy, również zdefiniowanej w runtime.json pliku:The following example shows a slightly bigger RID graph also defined in the runtime.json file:

    win7-x64    win7-x86
       |   \   /    |
       |   win7     |
       |     |      |
    win-x64  |  win-x86
          \  |  /
            win
             |
            any

Wszystkich identyfikatorów RID po pewnym czasie zamapować powrót do katalogu głównego any identyfikatorów RID.All RIDs eventually map back to the root any RID.

Istnieją pewne zagadnienia dotyczące identyfikatorów RID, które trzeba mieć na uwadze podczas pracy z nimi:There are some considerations about RIDs that you have to keep in mind when working with them:

  • Identyfikatorów RID są nieprzezroczyste ciągi i powinny być traktowane jako pola czarny.RIDs are opaque strings and should be treated as black boxes.
  • Nie twórz programowo identyfikatorów RID.Don't build RIDs programmatically.
  • Użyj identyfikatorów RID, które są już zdefiniowane dla platformy.Use RIDs that are already defined for the platform.
  • RID muszą być określone, dzięki czemu nie wolno zakładać cokolwiek — od rzeczywistej wartości identyfikatorów RID.The RIDs need to be specific, so don't assume anything from the actual RID value.

Przy użyciu identyfikatorów RIDUsing RIDs

Aby można było używać identyfikatorów RID, musisz wiedzieć, który istnieje identyfikatorów RID.To be able to use RIDs, you have to know which RIDs exist. Nowe wartości są regularnie dodawane do korzystania z platformy.New values are added regularly to the platform. Najnowsze i pełna wersja dla runtime.json pliku w repozytorium CoreFX.For the latest and complete version, see the runtime.json file on CoreFX repo.

.NET core 2.0 SDK wprowadzono pojęcie przenośne identyfikatorów RID..NET Core 2.0 SDK introduces the concept of portable RIDs. Są one nowe wartości dodane do grafu identyfikatorów RID, które nie są powiązane z konkretną wersję lub dystrybucji systemu operacyjnego.They are new values added to the RID graph that aren't tied to a specific version or OS distribution. Są one szczególnie przydatne podczas pracy z wieloma dystrybucje systemu Linux.They're particularly useful when dealing with multiple Linux distros.

Na poniższej liście przedstawiono najbardziej typowe identyfikatorów RID, używane dla każdego systemu operacyjnego.The following list shows the most common RIDs used for each OS. Nie omówiono arm lub corert wartości.It doesn't cover arm or corert values.

Windows identyfikatorów RIDWindows RIDs

  • PrzenośnaPortable
    • win-x86
    • win-x64
  • Windows 7 / Windows Server 2008 R2Windows 7 / Windows Server 2008 R2
    • win7-x64
    • win7-x86
  • System Windows 8 / Windows Server 2012Windows 8 / Windows Server 2012
    • win8-x64
    • win8-x86
    • win8-arm
  • Windows 8.1 / Windows Server 2012 R2Windows 8.1 / Windows Server 2012 R2
    • win81-x64
    • win81-x86
    • win81-arm
  • System Windows 10 / Windows Server 2016Windows 10 / Windows Server 2016
    • win10-x64
    • win10-x86
    • win10-arm
    • win10-arm64

Zobacz wymagania wstępne dla platformy .NET Core w Windows Aby uzyskać więcej informacji.See Prerequisites for .NET Core on Windows for more information.

Identyfikatorów RID w systemie LinuxLinux RIDs

  • PrzenośnaPortable
    • linux-x64
  • CentOSCentOS
    • centos-x64
    • centos.7-x64
  • DebianDebian
    • debian-x64
    • debian.8-x64
    • debian.9-x64 (.NET core 1.1 lub nowszy)debian.9-x64 (.NET Core 1.1 or later versions)
  • FedoraFedora
    • fedora-x64
    • fedora.27-x64
    • fedora.28-x64 (.NET core 1.1 lub nowszy)fedora.28-x64 (.NET Core 1.1 or later versions)
  • Gentoo (.NET Core 2.0 lub nowszy)Gentoo (.NET Core 2.0 or later versions)
    • gentoo-x64
  • openSUSEopenSUSE
    • opensuse-x64
    • opensuse.42.3-x64
  • Oracle LinuxOracle Linux
    • ol-x64
    • ol.7-x64
    • ol.7.0-x64
    • ol.7.1-x64
    • ol.7.2-x64
    • ol.7.3-x64
    • ol.7.4-x64
  • Red Hat Enterprise LinuxRed Hat Enterprise Linux
    • rhel-x64
    • rhel.6-x64 (.NET core 2.0 lub nowszy)rhel.6-x64 (.NET Core 2.0 or later versions)
    • rhel.7-x64
    • rhel.7.1-x64
    • rhel.7.2-x64
    • rhel.7.3-x64 (.NET core 2.0 lub nowszy)rhel.7.3-x64 (.NET Core 2.0 or later versions)
    • rhel.7.4-x64 (.NET core 2.0 lub nowszy)rhel.7.4-x64 (.NET Core 2.0 or later versions)
  • Tizen (.NET Core 2.0 lub nowszy)Tizen (.NET Core 2.0 or later versions)
    • tizen
    • tizen.4.0.0
    • tizen.5.0.0
  • UbuntuUbuntu
    • ubuntu-x64
    • ubuntu.14.04-x64
    • ubuntu.16.04-x64
    • ubuntu.17.10-x64
    • ubuntu.18.04-x64
  • Pochodne UbuntuUbuntu derivatives
    • linuxmint.17-x64
    • linuxmint.17.1-x64
    • linuxmint.17.2-x64
    • linuxmint.17.3-x64
    • linuxmint.18-x64 (.NET core 2.0 lub nowszy)linuxmint.18-x64 (.NET Core 2.0 or later versions)
    • linuxmint.18.1-x64 (.NET core 2.0 lub nowszy)linuxmint.18.1-x64 (.NET Core 2.0 or later versions)
    • linuxmint.18.2-x64 (.NET core 2.0 lub nowszy)linuxmint.18.2-x64 (.NET Core 2.0 or later versions)
    • linuxmint.18.3-x64 (.NET core 2.0 lub nowszy)linuxmint.18.3-x64 (.NET Core 2.0 or later versions)
  • SUSE Enterprise Linux (SLES) (.NET Core 2.0 lub nowszy)SUSE Enterprise Linux (SLES) (.NET Core 2.0 or later versions)
    • sles-x64
    • sles.12-x64
    • sles.12.1-x64
    • sles.12.2-x64
    • sles.12.3-x64
  • Alpine Linux (.NET Core 2.1 lub nowszy)Alpine Linux (.NET Core 2.1 or later versions)
    • alpine-x64
    • alpine.3.7-x64

Zobacz wymagania wstępne dla platformy .NET Core w systemie Linux Aby uzyskać więcej informacji.See Prerequisites for .NET Core on Linux for more information.

RID z systemem macOSmacOS RIDs

RID z systemem macOS za pomocą starszej znakowania "OSX".macOS RIDs use the older "OSX" branding.

  • osx-x64 (.NET core 2.0 lub nowszej wersji, minimalna wersja to osx.10.12-x64)osx-x64 (.NET Core 2.0 or later versions, minimum version is osx.10.12-x64)
  • osx.10.10-x64
  • osx.10.11-x64
  • osx.10.12-x64 (.NET core 1.1 lub nowszy)osx.10.12-x64 (.NET Core 1.1 or later versions)
  • osx.10.13-x64

Zobacz wymagania wstępne dla platformy .NET Core w systemie macOS Aby uzyskać więcej informacji.See Prerequisites for .NET Core on macOS for more information.

Android RID (.NET Core 2.0 lub nowszy)Android RIDs (.NET Core 2.0 or later versions)

  • android
  • android.21

Zobacz takżeSee also