Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
先日開催した Windows Developer Days のビデオ公開に向けて、先ほど自分のセッションビデオをチェックしていました。自分で自分が話しているビデオ(今回はスクリーン表示と声のみで顔は映ってません)を見るのは結構辛いのですが、そこは心を鬼にして頑張ってみてみました。こうしたら良かったとか、いろいろと勉強になることが多いですね・・・w
さて、そんなセッションの中でも、最近は NuGet を使用することが多くなっています。この NuGet でインターネット上の公式パッケージをインストールする場合、もちろんオンライン(インターネット接続)が必要ですが、さまざまな状況・場所で NuGet を使用したりデモしたりする場合、オフラインの場合も考慮しておかなければなりません。
こういった NuGet のオフラインでの使用を想定した事前準備として Package Cache の利用をご紹介します。
★ NuGet Package Cache
NuGet パッケージマネージャーを通して一度でもインストールしたパッケージは、Package Cache フォルダーにキャッシュされています。
この Package Cache フォルダーは、Visual Studio の [ツール] – [オプション] からオプションダイアログを開き、[Package Manager] – [General] の [Browse] ボタンから Cache フォルダーを開くことができます。
Package Cache の場所: C:\Users\<User Name>\AppData\Local\NuGet\Cache
通常、NuGet 公式パッケージは、直接 NuGet ギャラリー からダウンロードすることはできませんが、このキャッシュを通して .nupkg 形式で取得することができます。
急にオフラインになってしまった、などの場合に、この Package Cache フォルダーを Package Sources として登録することで NuGet パッケージマネージャーで使用することができます。
Package Sources への登録は、Visual Studio の [ツール] – [オプション] からオプションダイアログを開き、[Package Manager] – [Package Sources] から行うことができます。
こうすることで、Manage NuGet Packages ダイアログや Package Manager Console から参照することができるようになります。
ただし、この Package Cache には一度もインストールしていないパッケージは保存されていない ということに注意が必要です。つまり、デモなどの場合のオフラインへの対応として、この Package Cache の使用を最初から期待してしまうことは危険だということです。
もし、オフラインでの NuGet 使用を想定したバックアップとして考えるのであれば、あらかじめ必要なパッケージ (.nupkg) を Package Cache フォルダーなどから別のフォルダーにコピーしておき、Package Sources としてローカルフォルダーを登録しておくと安心でしょう。
私も、下記のような形でローカル環境に自分用のパッケージフォルダを作っています。先日の Windows Developer Days のセッションでも、もしものバックアップとして用意しておきました。
この Package Source にはフォルダー パスを登録できるとともに、IIS 上に独自に NuGet サーバーを用意することもできます(上記スクリーンショットの “My Package Server” のように)。
参考: Hosting Your Own NuGet Feeds
◆◆◆
先日、社内で NuGet の勉強会を行ったときのスライドを SlideShare にアップしておきましたので、よろしければご参考にしてください。社内勉強会の資料ですが、特に公開できない内容は含まれてませんので、そのまま公開しております。
NuGet でゲット! Visual Studio パッケージ マネージャ―概要
View more presentations from chack411