「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。

-戻る
--[[NuGet を使用したパッケージ管理]]
--[[NuGetの依存関係パッケージのポリシー]]
-[[戻る>NuGet を使用したパッケージ管理]]

* 目次 [#wcb75786]
#contents

*概要 [#m3c95fc1]
-何かNuGetパッケージをインストールすると、異常な程多くの、~
依存関係がpackage.configと*.csproj or *.vbprojファイルに追加されるケースがある。

-Visual Studio 2017から[[Package Reference>NuGet を使用したパッケージ管理#s3c3fcd3]]が利用可能になったが、~
[[一部問題>PackageReferenceに切り替え後のビルドで「error CS0246 The type or namespace name ...」が発生]]もあり、package.configを使用し続けているケースもある。

*詳細 [#p1f82fa4]

**依存関係設定をミスっている [#m15d7df7]
NuGetパッケージを作成する場合。

-[[コチラ>NuGet を使用したパッケージ管理#hfdecb5a]]に書いたように、nuspecファイルへの依存関係設定をミスっているケースも多い。

-このため、nuspecファイルの依存関係設定を適切に行う必要がある。

**NuGetをサマるプロジェクトを作成 [#a24c08c0]
NuGetパッケージを利用する場合。

-ウワモノのプロジェクトから直接、NuGetするのではなく、

--NuGetをサマるプロジェクトを作成し、
--そのプロジェクト出力を管理しておくと良いかも知れない。

-...と言うのも、
--自分が開発した「ライブラリ+テンプレート」のライブラリをNuGet登録して、
--リリース時に「NuGet+テンプレート」とテンプレートのNuGet参照を変更するのだけど、
--その際、不要な依存関係が大量に追加されるので、開発時のプロジェクト出力と比較して、
--リリースの度に不要な依存関係をテンプレートのNuGet参照から削除する手順が必要になっているため。

-この際、
-- [-IgnoreDependencies]オプションを使用して、[[Install-package>NuGet を使用したパッケージ管理#b9d4f08e]]
-- [-RemoveDependencies]オプションを使用しないで、[[Uninstall-package>NuGet を使用したパッケージ管理#b9d4f08e]]

>する。

----
Tags: [[:.NET開発]], [[:デプロイ]], [[:NuGet]]

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS