/ / ChakraCore NuGetパッケージエラーを修正する方法は? --visual-studio、react-native、nuget、xamarin-studio、chakracore

ChakraCore NuGetパッケージのエラーを修正するには? - ビジュアルスタジオ、反応ネイティブ、ナゲット、ザマリンスタジオ、チャクラコア

新しいReactNative Windows WPFプロジェクトを初期化すると、次のエラーが発生します。

NuGet Package restore failed for project Native: Unable to find version "1.4.1-preview-00010-42060" of package "Microsoft.ChakraCore". https://www.myget.org/F/chakracore-preview/api/v3/index.json: Package "Microsoft.ChakraCore.1.4.1-preview-00010-42060" is not found on source "https://www.myget.org/F/chakracore-preview/api/v3/index.json". https://api.nuget.org/v3/index.json: Package "Microsoft.ChakraCore.1.4.1-preview-00010-42060" is not found on source "https://api.nuget.org/v3/index.json".

スタンドアロンプ​​ロジェクトを作成して同じNuGetパッケージ参照を追加すると、Xamarin StudioMacでも同じエラーが発生します。

回答:

回答№1の場合は3

問題は、プロジェクトが参照していたことですnuget.orgの公式リリースフィードではなく、myget.orgの「プレビュー」フィード。プロジェクトのNuGet.Configファイルで、次のようなプレビューフィードを参照する行を削除します。

<add key="ChakraCore" value="https://www.myget.org/F/chakracore-preview/api/v3/index.json" />

Visual Studio 2015(またはXamarin / VisualStudio Mac)プロジェクトで、プロジェクトを右クリックし、[NuGet参照の管理]を選択します。そこから、[更新]タブをクリックし、リストから[ChakraCore]を選択して、[更新]をクリックします。これにより、packages.configおよびその他のファイルが更新されます。設定ファイルの編集中にプロジェクトを開いていた場合は、プロジェクトを閉じてから再度開いて、新しい設定を保持する必要があることに注意してください。場合によっては、アップグレードによって以前の1.4への参照が残されることがあります。 1-パッケージをプレビューすると、csprojファイルを手動で編集して削除する必要があります。

せずにこの変更を行う必要がある場合Visual / Xamarin Studioでは、いくつかのテキストファイルを編集するだけです。 packages.config(Visual Studio 2015内)で、1.4.1-previewバージョンを参照する行を最新リリース(この記事の執筆時点では1.5.2)に変更します。

<package id="Microsoft.ChakraCore" version="1.4.1-preview-00010-42060" targetFramework="net46" developmentDependency="true" />

〜になる

<package id="Microsoft.ChakraCore" version="1.5.2" targetFramework="net46" developmentDependency="true" />

プロジェクトのcsprojファイル: <Import Project="$(SolutionDir)packagesMicrosoft.ChakraCore.1.4.1buildnetstandard1.0Microsoft.ChakraCore.props" Condition="Exists("$(SolutionDir)packagesMicrosoft.ChakraCore.1.4.1buildnetstandard1.0Microsoft.ChakraCore.props")" />

〜になる

<Import Project="$(SolutionDir)packagesMicrosoft.ChakraCore.1.5.2buildnetstandard1.0Microsoft.ChakraCore.props" Condition="Exists("$(SolutionDir)packagesMicrosoft.ChakraCore.1.5.2buildnetstandard1.0Microsoft.ChakraCore.props")" />

そして

<Error Condition="!Exists("$(SolutionDir)packagesMicrosoft.ChakraCore.1.4.1buildnetstandard1.0Microsoft.ChakraCore.props")" Text="$([System.String]::Format("$(ErrorText)", "$(SolutionDir)packagesMicrosoft.ChakraCore.1.4.1buildnetstandard1.0Microsoft.ChakraCore.props"))" />

〜になる

<Error Condition="!Exists("$(SolutionDir)packagesMicrosoft.ChakraCore.1.5.2buildnetstandard1.0Microsoft.ChakraCore.props")" Text="$([System.String]::Format("$(ErrorText)", "$(SolutionDir)packagesMicrosoft.ChakraCore.1.5.2buildnetstandard1.0Microsoft.ChakraCore.props"))" />

一般的に言って、プレビューを参照しないでください他の人が使用する本番プロジェクトまたはプロジェクトテンプレートのmyget.orgからのパッケージ。それらはいつでも削除でき、セキュリティ更新プログラムは公式チャネルと同じ規則で公開されない場合があります。


回答№2については2

プレビューMicrosoft.ChakraCoreNuGetパッケージがから削除されたようです MyGetフィード.

メインのNuGet.orgサイトには、 Microsoft.ChakraCoreNuGetパッケージ.

したがって、パッケージへの参照を編集し、公開されたバージョンを使用する必要があります。 Microsoft.ChakraCoreバージョン1.4.4が機能するはずです。

また、 未解決の問題 これについては、ReactネイティブのGitHubサイトにあります。