NuGetパッケージマネージャーコンソールを使用するとソースに到達できない


153

ファイルの手動更新からNuGetにパッケージ管理を移行しています。古いバージョンのパッケージをインストールして、ソース管理にすでにあるパッケージと一致させようとしています。UIからこれを行う方法はないので、コマンドラインを使用して適切なバージョンを取得します。

どういうわけか、Install-Package私はnugetギャラリーに到達できないことを私に伝え続けます。

nuget.org [ https://www.nuget.org/api/v2/]のソースに到達できません。NuGetローカルキャッシュへのフォールバック

これは、当社のソリューションの1つでのみ発生します。新しいソリューションを作成するか、同じリポジトリで別のソリューションを使用すると、パッケージは期待どおりにインストールされます。ダミーソリューションにパッケージをインストールしてローカルキャッシュを満たし、障害のあるソリューションに正常にインストールすることもできます。Invoke-WebRequestNuGetコンソールからURLにアクセスしようとすると、HTTP 200が表示されます。

何が原因ですか?ソリューション/プロジェクトごとにパッケージソースを上書きする方法はありますか?


3
私はこれと同じ問題を抱えています。昨日VS 2013 Update 2をインストールしました。これは新しいバグかもしれません...?ところで、[NuGetパッケージの管理]ダイアログから問題なくパッケージをインストールできます。この問題は、パッケージマネージャーコンソールでのみ発生します。
rsenna 2014年

2
同じ問題があります。常に[パッケージの管理]ダイアログで機能しますが、パッケージマネージャーコンソールでは機能しません。
David Tansey 2014年

10
再起動Visual Studioはಠ_ಠ私のためにこれを固定
クリスMarisic

回答:


338

パッケージマネージャーコンソールでパッケージソースがnuget.orgに設定されていても、-Source nuget.org引数を明示的に追加すると、これが修正されました。

したがって、使用例は次のようになります。

Install-Package Akka.net -Source nuget.org

Akka.netは、インストールするパッケージです。ここでは例を示しています。


1
PCとVisual Studioを再起動しました。しかし...確かに私の既存のマルチプロジェクトの.sln内部の私の新しいの.vbprojインスタンスのためのトリックをやった-ソースnuget.org追加
bkwdesign

この引数を追加する場所と方法は?詳細を教えてください。
Radenko Zec 2015

それも私にとってはうまくいきました(今のところ、実際に!)。古いバージョンのjQueryをインストールしようとしましたが、「nuget.orgのソース[ nuget.org/api/v2/]」というエラーが発生し続けました。私はそれを修正する方法を知りません。
Loudenvier、2015

ありがとう、私はこのようにしました:Install-Package jQuery.UI.Combined -Source nuget.org
shaijut

7
これがどのように機能するか考えていますか?これが機能しても意味がわからないので、気になるところです。だからエラーは言うnuget.orgのソース[ nuget.org/api/v2/]は到達不可能で、それから私は同じソースを指定-Source nuget.orgしてそれは動作しますか?
Vladimirs

10

Visual StudioのオプションでデフォルトのNuGetソースをコピーする必要がありました。コピーしたソースを使用して、URLをからに変更しhttpsましたhttp。これで問題は解決しました。

この提案のクレジットは、https://nuget.codeplex.com/discussions/561075#PostDetailsCell_1354351の「jpharris4」に属しています


これは非常に良い点です。NuGetは証明書の検証に敏感な場合があります。
Etienne Maheu、2015年

6

問題の原因がわからないのですが、ソリューションごとにパッケージソースをオーバーライドする方法は確かにありますが、指定されたソリューションでNuGetパッケージの復元有効にした場合に限られます。

ソリューションがNuGetパッケージの復元を有効にすると、「。nuget」というフォルダーがソリューションに追加されます。この下にあるのは、添付の画像にあるような "'$(PackageSources)' == ''"のItemGroupを持つ "NuGet.targets"というファイルです。

ItemGroupが空の場合(または図のように完全にコメント化されている場合)、ソリューションは、[ツール] >> [オプション]にリストされているソースと同じである必要がある特定のファイルを使用します。ただし、PackageSourceアイテムのコメントを解除するか、そのItemGroupに追加すると、ソリューションはリストされたパッケージソースのみを検索し、リストされたもののみを検索します。

Nuget.targetsファイルの内容


2
NuGet.targetsファイルで定義されたパッケージソースは、パッケージの復元時にビルド中に使用されるものにのみ影響します。.nu​​getディレクトリのNuGet.configファイルにあるパッケージソースは、Visual Studioのプロジェクトで使用できるパッケージソースに影響します。
Matt Ward

このソリューションでは、パッケージの復元を有効にしています。ItemGroupは、スクリーンショットのように構成されていますが、これはデフォルト設定であると想定しているため、これは問題ではないと思います。ただし、パッケージの復元はかなり前から有効になっており、それ以降、ターゲットファイルが変更されています。これらのファイルを削除してパッケージの復元を再度有効にすることにより、これらのファイルを最新バージョンに更新してみましたが、問題が解決したようです。
Etienne Maheu

か否か。最初は機能しましたが、ソリューションのパッケージを復元してVisual Studioを再起動した後、問題が再発しました。
Etienne Maheu 2014年

いくつかの明確な質問:1)packages.configで参照されている適切なバージョンがありますか?2)探しているバージョンがNuGetサーバーにまだ存在することを確認しましたか?3)ソリューションをクリーンアップし、1)と2)が完了した後に再構築しましたか?
学者学者、2014年

1
それが何らかの慰めである場合-私はこの問題を受け取りますが、私の仕事用PCでのみ発生し、ほとんどのプロジェクトで発生します。奇妙なことに、それは断続的で私を怒らせる!
Matt

6

UIからNuGetソースを変更することもできます。NuGetソースを古いバージョンに変更するだけで問題なく動作します。

ここに画像の説明を入力してください

VS 2015には、api.nuget.org(v3)に関連するバグがまだ少ないようです。


2

パッケージマネージャーコンソールにソースが表示されませんでした

移動: ツール->オプション-> Nugetパッケージマネージャー->パッケージソース

ソースを見つけました。それらのチェックを外し、再度チェックすると、パッケージマネージャーコンソールに再表示されます


2

私は完全なURLと一緒にcommanを提供する必要がありました Install-Package MySql.Data.Entity -Version 6.9.8 -Source http://www.nuget.org/api/v2


1

私の場合、原因はパッケージが合意したことでした。UI-[NuGetパッケージの管理]ダイアログから、同意して続行するオプションがあります。

VS 2013のパッケージマネージャーコンソールには、この問題があるようです。他の人が言ったように、VS 2013を再起動すると、コンソールで問題が解決する可能性があります。


1

これはVS 2015のprofで私のために働いています:ツール->オプション-> Nugetパッケージマネージャー->パッケージソース

  1. 追加ボタンを押す
  2. 名前ラベルで編集:nuget.org
  3. ソースラベルで編集:https : //www.nuget.org/api/v2/
  4. OKを押します

それが役に立てば幸い ;)


VS 2015では、リストのv3を使用する必要があります... v2ではありません!ホームページから取得 NuGetフィードv3(VS 2015 / NuGet v3.x):api.nuget.org/v3/index.json NuGetフィードv2(VS 2013以前/ NuGet 2.x):nuget.org/api/v2
Paul Zahra、2016

0

同じメッセージで同じ問題が発生しました。しかし、私の問題の理由はTFSへの接続が失われたことです。私のTFSサーバーは他のネットワークでホストされており、アクセスにはVPNを使用しました。TFSへの接続を確立せずに(VPNがオフになっている)パッケージをインストールしようとすると、同じ問題が発生しました。

このTFSの動作に注意してください。


0

オフラインモードで作業しているために発生します。ネットワークに再接続すると、ログオフしてから再度ログアウトする必要があります。パッケージマネージャーはスムーズに再初期化されます。


0

私はこの問題VS2013に直面し、3時間を無駄にしました。

問題の原因が何であったかはわかりません。しかし、上記の解決策はどれも私にとってはうまくいきませんでした。

Nuget Package Managerコンソールの再インストールがうまくいきました。

ツール->拡張機能と更新->すべての下でVisual StudioのNuget Package Managerを探し、アンインストールをクリックします。

https://marketplace.visualstudio.com/items?itemName=NuGetTeam.NuGetPackageManagerforVisualStudio2013に移動して、拡張機能をダウンロードします


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.