.NET core RID katalogu.NET Core RID Catalog

Identyfikatorów RID jest skrót identyfikator środowiska uruchomieniowego.RID is short for Runtime IDentifier. Wartości identyfikatorów RID są używane do identyfikacji platform docelowych, którym działa aplikacja.RID values are used to identify target platforms where the application runs. Są one 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. Pakietów z zależnościami natywnego 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> element pliku projektu.A single RID can be set in the <RuntimeIdentifier> element of your project file. Wiele identyfikatorów RID może być zdefiniowana jako listę rozdzielaną średnikami 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ącymi polecenia 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ą konkretnych systemów operacyjnych 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 platformy.[os] is the operating/platform system moniker. Na przykład ubuntu.For example, ubuntu.

  • [version] jest to wersja systemu operacyjnego w formie oddzielona kropkami (.) 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 powinny marketingowe w wersji, ponieważ stanowią one często wielu odrębny wersji systemu operacyjnego ze zróżnicowanymi 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] 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] rozróżniania różnych platform.[additional qualifiers] further differentiate different platforms. Na przykład: aot lub corert.For example: aot or corert.

Wykres identyfikatorów RIDRID graph

Wykres identyfikatorów RID lub wykres rezerwowy środowiska uruchomieniowego znajduje się lista identyfikatorów RID, które są zgodne ze sobą.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 identyfikatorów RID w 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 wszystkie identyfikatorów RID, z wyjątkiem podstawowego katalogu zawiera "#import" instrukcji.In this file, you can see that all RIDs, except for the base one, contain an "#import" statement. Te instrukcje wskazują zgodne identyfikatorów RID.These statements indicate compatible RIDs.

Gdy NuGet przywraca pakietów, próbuje znaleźć dokładnego dopasowania dla określonego środowiska wykonawczego.When NuGet restores packages, it tries to find an exact match for the specified runtime. Jeśli nie znaleziono dokładnego dopasowania, NuGet przeprowadzi Cię wstecz wykresu aż do 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żej 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 znaleźć 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 znaleźć określonego środowiska uruchomieniowego, można przywrócić pakiety, które określają osx.10.11-x64 środowisk uruchomieniowych, 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 nieco większy wykres RID też definiowany 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

Wszystkie identyfikatorów RID po pewnym czasie mapy od głównego any identyfikatorów RID.All RIDs eventually map back to the root any RID.

Istnieje kilka dodatkowych kwestii dotyczących identyfikatorów RID, które należy 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ągów i powinien być traktowany jako czarne pola.RIDs are opaque strings and should be treated as black boxes.
  • Nie Konstruuj programowo identyfikatorów RID.Don't build RIDs programmatically.
  • Użyj identyfikatorów RID, które zostały już zdefiniowane dla platformy.Use RIDs that are already defined for the platform.
  • RID muszą być określone, więc nie wolno zakładać nic 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żyć identyfikatorów RID, trzeba znać istniejących identyfikatorów RID.To be able to use RIDs, you have to know which RIDs exist. Regularnie dodawane nowe wartości dla platformy.New values are added regularly to the platform. Najnowsze i pełna wersja dla runtime.json pliku na CoreFX repozytorium.For the latest and complete version, see the runtime.json file on CoreFX repo.

.NET core 2.0 SDK wprowadza pojęcia przenośne identyfikatorów RID..NET Core 2.0 SDK introduces the concept of portable RIDs. Są one nowe wartości dodawać do wykresu identyfikatorów RID, które nie są powiązane określonej wersji 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 użyteczne w przypadku wielu dystrybucjach systemu Linux.They're particularly useful when dealing with multiple Linux distros.

Poniższa lista przedstawia 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 obejmuje ona arm lub corert wartości.It doesn't cover arm or corert values.

RID systemu WindowsWindows RIDs

  • PrzenośnaPortable
    • win-x86
    • win-x64
  • Windows 7 / Windows Server 2008 R2Windows 7 / Windows Server 2008 R2
    • win7-x64
    • win7-x86
  • 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
  • Windows 10 / Windows Server 2016Windows 10 / Windows Server 2016
    • win10-x64
    • win10-x86
    • win10-arm
    • win10-arm64

Zobacz wymagania wstępne dotyczące .NET Core w systemie Windows Aby uzyskać więcej informacji.See Prerequisites for .NET Core on Windows for more information.

Linux identyfikatorów RIDLinux RIDs

  • PrzenośnaPortable
    • linux-x64
  • CentOSCentOS
    • centos-x64
    • centos.7-x64
  • DebianDebian
    • debian-x64
    • debian.8-x64
  • FedoraFedora
    • fedora-x64
    • fedora.24-x64
    • fedora.25-x64 (.NET core w wersji 2.0 lub nowszy)fedora.25-x64 (.NET Core 2.0 or later versions)
    • fedora.26-x64 (.NET core w wersji 2.0 lub nowszy)fedora.26-x64 (.NET Core 2.0 or later versions)
  • Gentoo (.NET Core w wersji 2.0 lub nowszy)Gentoo (.NET Core 2.0 or later versions)
    • gentoo-x64
  • openSUSEopenSUSE
    • opensuse-x64
    • opensuse.42.1-x64
  • Oracle LinuxOracle Linux
    • ol-x64
    • ol.7-x64
    • ol.7.0-x64
    • ol.7.1-x64
    • ol.7.2-x64
  • Red Hat Enterprise LinuxRed Hat Enterprise Linux
    • rhel-x64
    • rhel.6-x64 (.NET core w wersji 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 w wersji 2.0 lub nowszy)rhel.7.3-x64 (.NET Core 2.0 or later versions)
    • rhel.7.4-x64 (.NET core w wersji 2.0 lub nowszy)rhel.7.4-x64 (.NET Core 2.0 or later versions)
  • Tizen (.NET Core w wersji 2.0 lub nowszy)Tizen (.NET Core 2.0 or later versions)
    • tizen
  • UbuntuUbuntu
    • ubuntu-x64
    • ubuntu.14.04-x64
    • ubuntu.14.10-x64
    • ubuntu.15.04-x64
    • ubuntu.15.10-x64
    • ubuntu.16.04-x64
    • ubuntu.16.10-x64
  • Ubuntu pochodneUbuntu derivatives
    • linuxmint.17-x64
    • linuxmint.17.1-x64
    • linuxmint.17.2-x64
    • linuxmint.17.3-x64
    • linuxmint.18-x64
    • linuxmint.18.1-x64 (.NET core w wersji 2.0 lub nowszy)linuxmint.18.1-x64 (.NET Core 2.0 or later versions)

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

System macOS identyfikatorów RIDmacOS RIDs

System macOS RID za pomocą starszej znakowania "OS x".macOS RIDs use the older "OSX" branding.

  • osx-x64 (.NET core w wersji 2.0 lub nowszy, 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 dotyczące .NET Core na macOS Aby uzyskać więcej informacji.See Prerequisites for .NET Core on macOS for more information.

Android identyfikatorów RID (.NET Core w wersji 2.0 lub nowszy)Android RIDs (.NET Core 2.0 or later versions)

  • android
  • android.21

Zobacz takżeSee also

Identyfikatory środowiska wykonawczegoRuntime IDs