プロジェクトマニフェストの dependencies 属性は JSON オブジェクトで、 パッケージ名をバージョンにマップします。バージョン番号は、 パッケージレジストリからダウンロードするパッケージのバージョンを示します。以下はその例です。
{
"dependencies": {
"com.my-package": "2.3.1",
"com.my-other-package": "1.0.1-preview.1",
etc.
}
}
バージョン番号の使用に加えて、パッケージマネージャーは以下を使ってプロジェクト依存関係の追加をサポートします。
直接 依存はプロジェクトレベルの依存です。Package Manager ウィンドウからパッケージをインストールするか、プロジェクトの manifest.json
ファイルを手動で編集して明示的に依存関係を追加すると、直接的なパッケージの依存関係を作成します。()
パッケージは、他のパッケージに対して独自の依存関係を宣言できます。このような依存関係は、他のパッケージをインストールするときに、プロジェクトの 間接的、推移的な依存関係になります。()
Package Manager は、どのような依存関係かに関係なく、インストールする各パッケージのバージョンを決定します。どのように行われているかというと、直接の依存関係を間接的な依存関係よりも優先します (より優先度の高いバージョンが他の要件に違反していない限り)。
この評価は 依存関係の解決 と呼ばれ、おおよそ以下のロジックに従います。
どのような場合であっても、手動でこれらの解決方法をオーバーライドできます 。これを行うには、プロジェクトマニフェストで特定のバージョンをリクエストします (Package Manager ウィンドウからインストールするか、 マニフェストを直接編集します)。これにより、直接的な依存関係が作成され、他の解決方法よりも優先されます。