1. ホーム
  2. visual-studio-2017

[解決済み] Visual Studio 2017の依存関係における黄色い警告の三角形は何を意味するのか?

2022-04-22 19:46:27

質問

PCLライブラリを新しい.Net標準ライブラリに変換したところ、以下のように依存関係に黄色い警告の三角形が表示されました。

変換中に、依存関係を含むすべてのnugetパッケージが持ち込まれたので、ダブリが発生する可能性があります。

黄色い警告の三角形が何を表しているか調べるにはどうしたらいいですか?

EDIT

ビルドログを表示します。

<ブロッククオート

ビルド中にNuGetがパッケージをリストアしないようにするには、Visual Studioのオプション]ダイアログで、[パッケージマネージャ]ノードをクリックし、以下のチェックボックスをオフにします。 'Allow NuGet to download missing packages during build'(ビルド中にNuGetが不足したパッケージをダウンロードすることを許可する。NU1605 です。 パッケージのダウングレードを検出しました: NUnit 3.8.1 から 2.6.4 まで。参照 パッケージをプロジェクトで直接選択し、別のバージョンを選択してください。

MyProj.UI.Tests -> MyProj.Core.Tests -> NUnit (>= 3.8.1)

MyProj.UI.Tests -> NUnit (>= 2.6.4) NU1605: 検出されたパッケージ downgrade: NUnit を 3.8.1 から 2.6.4 に変更しました。パッケージを直接参照する を選択し、別のバージョンを選択してください。 MyProj.UI.Tests.iOS -> MyProj.UI.Tests -> MyProj.Core.Tests -> NUnit (>= 3.8.1) MyProj.UI.Tests.iOS -> NUnit (>= 2.6.4) NU1605 です。検出されたパッケージ downgrade: NUnit を 3.8.1 から 2.6.4 に変更しました。パッケージを直接参照する を選択し、別のバージョンを選択してください。

MyProj.UI.Tests.Android -> MyProj.UI.Tests -> MyProj.Core.Tests ->.MyProj.UI.Tests -> NUnit (>= 3.8.1) MyProj.UI.Tests.Android -> NUnit (>= 2.6.4)です。

どのように解決するのですか?

ビルドログで、たまたま気づいたのですが。

<ブロッククオート

C:♪Program Filesdotnet2.0.2Microsoft.NET.SdkbuildMicrosoft.NET.Sdk.DefaultItems.targets(199,5).DefaultItems は、Microsoft.NET.Sdk.DefaultItems.Targets の登録商標です。 warning : A PackageReference for 'NETStandard.Library' was included in the future. あなたのプロジェクト このパッケージは、.NET SDKによって暗黙的に参照されます。 通常、プロジェクトで参照する必要はありません。詳細は をご覧ください。 https://aka.ms/sdkimplicitrefs

そのため、私は .Net Standard ナゲット に記載されています。

<ブロッククオート

.NETStandard 1.1

  • Microsoft.NETCore.Platforms (>= 1.1.0)

  • System.Collections (>= 4.3.0)

  • System.Collections.Concurrent (>= 4.3.0)

  • System.Diagnostics.Debug (>=> 4.3.0)

  • System.Diagnostics.Tools (>= 4.3.0)

  • System.Diagnostics.Tracing (>= 4.3.0)

  • システム.グローバリゼーション (>= 4.3.0)

  • System.IO (>= 4.3.0)

  • System.IO.Compression(圧縮) (>= 4.3.0)

  • システム.Linq (>= 4.3.0)

  • System.Linq.Expressions (>= 4.3.0)

  • System.Net.Http (>= 4.3.2)

  • System.Net.Primitives(プリミティブ) (>= 4.3.0)

  • System.ObjectModel (>= 4.3.0)

  • システム.リフレクション (>= 4.3.0)

  • System.Reflection.Extensions (>= 4.3.0)

  • System.Reflection.Primitives(プリミティブ) (>= 4.3.0)

  • System.Resources.ResourceManager (>= 4.3.0)

  • システム.ランタイム (>= 4.3.0)

  • System.Runtime.Extensions (>= 4.3.0)

  • System.Runtime.InteropServices (>= 4.3.0)

  • System.Runtime.InteropServices.RuntimeInformation (>=> 4.3.0)

  • System.Runtime.Numerics (>= 4.3.0)

  • System.Text.Encoding (>= 4.3.0)

  • System.Text.Encoding.Extensions (>= 4.3.0)

  • System.Text.RegularExpressions (>= 4.3.0)

  • System.Threading (>= 4.3.0)

  • System.Threading.Tasks (>= 4.3.0)

  • System.Xml.ReaderWriter (>= 4.3.0)

  • System.Xml.XDocument (>= 4.3.0)

そして、黄色の警告が消えました。

ここから https://blogs.msdn.microsoft.com/dotnet/2017/08/14/announcing-net-standard-2-0/

また、以下のようにNoWarnプロパティを使用することも可能であることがわかりました。

<ItemGroup>
  <PackageReference Include="Huitian.PowerCollections" Version="1.0.0" NoWarn="NU1701" />
</ItemGroup>