2017年4月27日木曜日

C# NuGetのVisualSutudioとfor Macの管理の違い

「NuGet」は「C#」でパッケージ管理を行ってくれます。
依存関係のあるパッケージもインストールしてくれるし、
依存パッケージが非対応バージョンの時は最新バージョンへの自動更新も行います。

「Windows」と「Mac」で「VisualStudio」を使う場合、
まぁ、たいした違いはないのですが、
「NuGet」で管理にほんの少し違いがあるのでまとめてみました。



「Windows」の「NuGet」管理


プロジェクトで「右クリック->NuGetパッケージの管理->参照」
で任意の「NuGetパッケージ」を追加します。

「packages」フォルダ…
「VisualStudio」の「.sln」ソリューションファイルと同階層に
「packages」フォルダは作成されます。
「VisualStudio」側から直接「packages」フォルダの確認はしません。
プロジェクトの「参照」から確認します。
「packages」フォルダ内には依存関係も含めた各々のパッケージが、
「各パッケージ名」のフォルダとして展開されます。
「packages」フォルダは手動で削除しても問題ありません。
(ビルド時に自動で再ダウンロードされます)

「参照」内…
プロジェクトの「参照」から
追加された「パッケージ」(DLL)の存在を確認できます。
(ダブルクリックで「オブジェクトブラウザー」が見れます)

「packages.config」…
プロジェクトに「packages.config」XMLファイル作成されます。
追加したパッケージやバージョン情報が書き込まれたファイルです。
勝手に編集しない事。編集不可。



「Mac」の「NuGet」管理


プロジェクトで「右クリック->追加->NuGetパッケージの追加」
で任意の「NuGetパッケージ」を追加します。
追加処理が終わったら念のために、
プロジェクトの「参照」と「パッケージ」を、
それぞれ右クリックして「最新の情報に更新」を行っておきます。

「packages」フォルダ…
「VisualStudio」の「.sln」ソリューションファイルと同階層に
「packages」フォルダは作成されます。
「VisualStudio」側から直接「packages」フォルダの確認はしません。
プロジェクトの「パッケージ」から確認します。
「packages」フォルダ内には依存関係も含めた各々のパッケージが、
「各パッケージ名」のフォルダとして展開されます。
「packages」フォルダは手動で削除しても問題ありません。
(ビルド時に自動で再ダウンロードされます)

「参照/パッケージから」内…
プロジェクトの「参照/パッケージから」から
追加された「パッケージ」(DLL)の存在を確認できます。
(ダブルクリックで「アセンブリブラウザー」が見れます)
管理はプロジェクトの「パッケージ」から行います。

「パッケージ」内…
プロジェクトの「パッケージ」から
追加された「パッケージ」(DLL)の存在を確認できます。
(ダブルクリックで「アセンブリブラウザー」が見れます)
ここから自分で追加した各パッケージの管理ができます。
・「パッケージ」を右クリック…
  「パッケージの追加」→プロジェクトに新しい「NuGetパッケージ」追加。
  「更新」→「NuGetパッケージ」に新バージョンがあればアップデート。
  「復元」→破損した「NuGetパッケージ」を再ダウンロード。
       (新バージョンへのアップデートは行われない。)
・「パッケージ」階層下の更新したいパッケージを右クリック…
  「更新」→「NuGetパッケージ」に新バージョンがあればアップデート。
  「削除」→「NuGetパッケージ」を削除。関連「パッケージ」(DLL)も削除。 

「packages.config」…
プロジェクトに「packages.config」XMLファイル作成される。
追加したパッケージの情報が書き込まれる。
勝手に編集しない事。編集不可。




以下のサイトを参考にしています。
https://techinfoofmicrosofttech.osscons.jp/index.php?NuGet%20%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%9F%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8%E7%AE%A1%E7%90%86
https://www.xlsoft.com/jp/products/xamarin/nuget_walkthrough.html





0 件のコメント:

コメントを投稿

↑Topへ