nuget 「リモート名を解決できませんでした。: ‘api.nuget.org’」が発生した場合
NuGetで「リモート名を解決できませんでした: api.nuget.org」が発生した場合の原因と対処法を解説します。ネットワーク接続、DNS、プロキシ設定、NuGetパッケージソース、Visual Studio側の確認手順まで紹介します。vscodeのバージョンは1.51.1となります。
目次
環境
- OS windows10 pro 64bit
- Visual Studio 2019
- .NET Core 3.0.1
エラー全文
nugetソリューションで参照した際に発生
[nuget.org] ソース https://api.nuget.org/v3/index.json のサービス インデックスを読み込めません。
この要求の送信中にエラーが発生しました。
リモート名を解決できませんでした。: 'api.nuget.org'原因
リモート名を解決できませんでしたとなっていたので、単純にインターネットに出れていなかっただけでした。
イントラ内のマシンでリモートしていて、対象のマシンのネットが切れていたので、なかなか気づかなかったのでアップしてます。
対処法
インターネットの接続を見直す
その他の原因
このエラーは、NuGetがapi.nuget.orgへ接続できない場合に発生します。
リモート名を解決できませんでした。: 'api.nuget.org主な原因として、DNSの名前解決エラー、ネットワーク接続不良、プロキシ設定、NuGetパッケージソースの設定ミスなどが考えられます。
インターネット接続を確認する
ping api.nuget.org名前解決できない場合は、DNS設定や社内ネットワークの制限を確認してください。
NuGetのパッケージソースを確認する
Visual Studioの場合は、以下からパッケージソースを確認できます。
ツール → NuGet パッケージ マネージャー → パッケージ マネージャー設定 → パッケージ ソース
NuGet.orgのURLは以下です。
https://api.nuget.org/v3/index.jsondotnet CLIで確認する
dotnet nuget list sourceNuGet.orgが無効になっている場合は、以下で追加できます。
dotnet nuget add source https://api.nuget.org/v3/index.json -n nuget.orgプロキシ環境の場合
社内ネットワークやプロキシ環境では、NuGetが外部通信できないことがあります。
nuget config -set http_proxy=http://proxy.example.com:8080必要に応じて、社内のネットワーク管理者にNuGet.orgへの通信許可を確認してください。
NuGetキャッシュをクリアする
dotnet nuget locals all --clearキャッシュ破損が原因の場合は、クリア後に再度パッケージの復元を実行します。
参考リンク
-
前の記事
javascript beforeで直前のノードにテキストや要素を追加する 2021.02.06
-
次の記事
rails6 エラーメッセージを日本語化する 2021.02.07
コメントを書く