NuGetで古いバージョンのパッケージをダウンロードする


907

最新バージョンではなく、以前のバージョンのパッケージをNuGetでダウンロードする方法はありますか?

回答:


1117

Visual Studioでパッケージマネージャーコンソールを表示します-ツール/ NuGetパッケージマネージャー/パッケージマネージャーコンソールにあります。次に、Install-Packageコマンドを実行します。

Install-Package Common.Logging -Version 1.2.0

詳細については、コマンドリファレンス参照してください。

編集:パッケージのバージョンを一覧表示するには、リモート引数とフィルターを指定 Get-Packageコマンドを使用できます。

Get-Package -ListAvailable -Filter Common.Logging -AllVersions

Install-Packageコマンドのバージョンオプションの後にタブを押すと、使用可能な最新バージョンのリストが表示されます。


54
Nugetをしばらく使用していて、それをコマンドラインから何も実行したことがない人のために:PHeibergが言及しているPowerShellコマンドを実行するには、Visual Studioのパッケージマネージャーコンソールを起動する必要があります- ツールにあります|ライブラリパッケージマネージャー|パッケージマネージャーコンソール
ジョナサンモファット

20
このコマンドは、UIからも使用できるはずです。現在、発行元がベータ版を持っている場合、その最新バージョンのみを取得できますが、不安定になる場合があります。
Bart Verkoeijen

2
@bgever-ほとんどのパブリッシャーは、GUIの「最新」とは見なされないベータパッケージのプレリリースを作成します。パブリッシャーがバージョン管理を正しく使用している限り、最新バージョンは常に安定したバージョンである必要があります。ただし、バグがないことを意味するわけではありません...
Jesse Webb 2013年

3
依存関係情報と利用可能な他のプロパティを調べる:Get-Package -ListAvailable [-Source X] -Filter Common.Logging -AllVersions | バージョン、依存関係を選択(または ' | get-member 'ですべてのプロパティを表示)
Curtis Yallop '25年

2
Get-Package -ListAvailableは、利用可能なすべてのバージョンをリストしているわけではありません。
Roman Starkov 14年

52

パッケージインデックスでそのページを参照します。http://www.nuget.org/packages/Newtonsoft.Json/4.0.5

次に、指定されたインストール手順に従います。

Install-Package Newtonsoft.Json -Version 4.0.5

または、.nupkgファイルをダウンロードするには、「ダウンロード」リンクをクリックします。https://www.nuget.org/api/v2/package/Newtonsoft.Json/4.0.5

廃止:ダウンロードリンクを挿入するChrome拡張機能Nutakeをインストールします。


35

別のオプションは、packages.configファイル内のバージョン番号を変更することです。これにより、次にビルドするときにNuGetがそのバージョンのDLLをダウンロードします。


1
いいですね...それについては考えていませんでした。NuGetパッケージの復元をソリューションで有効にする必要があると思います。
Leniel Maccaferri 14

12
これは、アセンブリ参照を自動的に変更するのに十分ではありません。(ソリューションに少なくとも2つのアセンブリがある場合)は、次のように機能します。1。1つのアセンブリがパッケージを参照していることを確認します。2。で正しいバージョンを編集しますpackages.config。3。ソリューションでNuGetパッケージを管理します。3a。パッケージを別のプロジェクトに追加し、元のプロジェクトから削除して、これを確認します、3b。3aを逆にして確認します。手順3aでは、正しいアセンブリ参照を別のプロジェクトに追加し、元のプロジェクトから削除します。ステップ3bは、正しいアセンブリ参照を元のプロジェクトに追加します。
Jeroen Wiert Pluimers、2014年

25

NuGet 3.x(Visual Studio 2015)では、UIからバージョンを選択するだけです

NuGet 3パッケージマネージャーUI


動作するときはいいですが、古いバージョンがすべてリストされているわけではない場合があります。
UuDdLrLrSs

5

NuGet 3.0では、このGet-Packageコマンドは廃止され、コマンドに置き換えられましFind-Packageた。

Find-Package Common.Logging -AllVersions

詳細については、NuGetコマンドリファレンスドキュメントをご覧ください。

これは、Visual Studio 2015でGet-Packageを使用しようとした場合に表示されるメッセージです。

This Command/Parameter combination has been deprecated and will be removed
in the next release. Please consider using the new command that replaces it: 
'Find-Package [-Id] -AllVersions'

または、@ Yishaiが言ったように、Visual StudioのNuGet画面のバージョン番号ドロップダウンを使用できます。


3

元の質問にはどのNuGetフロントエンドを使用する必要があるかが記載されていないため、NuGet 3.5はコマンドラインクライアントを介した特定のバージョンへの更新のサポートを追加します(ダウングレードでも機能します)。

NuGet.exe update Common.Logging -Version 1.2.0

0

上記のようにNuget Package Manager UIを使用すると、最初にnugetパッケージをアンインストールするのに役立ちます。最初にアンインストールしないと、nugetパッケージバージョンに戻るときに常に問題が発生します。一部の参照は適切にクリーンアップされていません。したがって、Nuget Package Managerを使用して古いnugetパッケージをインストールする場合は、次のワークフローをお勧めします。

  1. Nugetサーバー/ソースを選択しました
  2. 古いバージョンをインストールするnugetパッケージを見つけて選択します
  3. 現在のバージョンをアンインストール
  4. インストールのドロップダウンをクリック>古いバージョンを選択>インストールをクリック

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

幸運を :)

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