インターネットに接続していないマシンでNuGetパッケージを参照する

インターネット接続がないマシンで開発しなければならないときに、NuGetでパッケージを追加する方法。

デフォルトだとVisual Studioのパッケージソースはインターネット上のものだけが登録されているみたいなのでエラーになります。

この解決策としては、

  1. パッケージをパッケージソースからダウンロードしておく
  2. Visual Studioの設定でダウンロードしたフォルダをパッケージソースとして設定する
  3. 設定したパッケージソースからインストールする

とすることで、対応できます。

1.パッケージをパッケージソースからダウンロードしておく

https://www.nuget.org/へ行って、インストールしたいパッケージを検索。

パッケージページ右側の「Info」から、「Manual Download」で.nupkgファイルをダウンロード。

依存関係がある場合は、「Dependencies」下のリンクを辿って同じく.nupkgをダウンロード。

例えばMoqの場合

Castle.Core (>= 4.2.1)
System.Threading.Tasks.Extensions (>= 4.3.0)
System.ValueTuple (>= 4.3.0)

の3つが必要になっているので、合計4つをダウンロードします。

2.Visual Studioの設定でダウンロードしたフォルダをパッケージソースとして設定する

Visual Studioのツールメニュー>オプションを開いて、NuGetパッケージ マネージャー>パッケージソースを選択。

「+」アイコンをクリックして、ソースは1でダウンロードした.nupkgファイルをおいた場所に設定します。

3.設定したパッケージソースからインストールする

Visual Studioのツールメニュー>オプションを開いて、NuGetパッケージ マネージャー>ソリューションのNuGetパッケージの管理を選択。

右上のパッケージソースで追加したソースを選択すると、ダウンロードしておいたパッケージが表示され、インストールが可能になります。

インターネットに接続できない環境で、インターネット上のパッケージソースを有効にしておくと、「リモート名を解決できませんでした。」というエラーが表示されました。

このときは、2のステップで、「利用可能なパッケージソース」欄のインターネット上のソースのチェックボックスをオフにすればエラーが出なくなりました。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする