ターゲットランタイムの1つと互換性のあるフレームワーク .NETCoreApp=v1 のランタイムターゲットが見つかりません。質問する

ターゲットランタイムの1つと互換性のあるフレームワーク .NETCoreApp=v1 のランタイムターゲットが見つかりません。質問する

私はAsp.Net Core RC1プロジェクトをRC2に移行しようとしており、これに従っていますドキュメンテーションそしてまた、説明書DNX から .NET CLI への移行用。

試すと次のエラーが表示されますdotnet run:

ターゲット ランタイムの 1 つと互換性のあるフレームワーク '.NETCoreAPP、バージョン = v1.0' のランタイム ターゲットが見つかりません: 'win10-x64、win81-x64、win8-x64、win7-x64'。考えられる原因:

  1. プロジェクトが復元されていないか、復元に失敗しました -run 'dotnet restore'
  2. プロジェクトの「ランタイム」に「win10-x64、win81-x64、win7-x64」のいずれかがリストされていません

実行してみましたdotnet restoreが、正常に完了したようです。

関連するパッケージをすべて RC2 に更新しました。

ベストアンサー1

エラー メッセージに示されたとおりに実行すべきでした。RC1 から移行するときに、ファイルruntimes内のセクションを指定する必要があることに気づきませんでしたproject.json

project.jsonは次のセクションを追加しました:

"runtimes": {
    "win10-x64": { }
  }

そして私は出発する準備ができました。


2017年2月27日更新

Visual Studio 2017 RC の新しいプロジェクト テンプレートでは、アプリを(FDD)として展開することを選択した場合、事前に実行時間を (project.jsonまたはで)指定する必要がなくなりました。.csprojFramework Dependent Deployment

Self-contained Deploymentただし、 SCDを使用してアプリを展開することを選択した場合は、アプリを実行するすべての実行時間を指定する必要があります。あらかじめあなたのファイル内.csproj

.csproj以下は、SCD デプロイメント方法を使用するアプリのファイルの例です。

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp1.0</TargetFramework>
    <VersionPrefix>1.0.0</VersionPrefix>
    <DebugType>Portable</DebugType>
    <RuntimeIdentifiers>win10-x64;osx.10.11-x64</RuntimeIdentifiers>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Newtonsoft.Json" Version="9.0.1" />
  </ItemGroup>
</Project>

参照してくださいこのリンク詳細については、両方のタイプの展開オプションの詳細な説明と、それぞれの利点と欠点が記載されています。

おすすめ記事