Avertissement NuGet NU5048

The 'PackageIconUrl'/'iconUrl' element is deprecated. Consider using the 'PackageIcon'/'icon' element instead. Learn more at https://aka.ms/deprecateIconUrl

Problème

L’URL de l’icône est déconseillée en faveur de l’incorporation de l’icône à l’intérieur du package NuGet. Les causes possibles sont :

  • Lors de la création d’un package à partir d’un fichier nuspec, il contient une entrée <iconUrl/>.
  • Lors de la création d’un package à partir d’un fichier projet MSBuild, il contient une propriété <PackageIconUrl>.

Solution

Pour arrêter de voir cet avertissement, ajoutez une icône incorporée à votre package.

Pour les fichiers projets MSBuild, ajoutez une propriété <PackageIcon/>, comme suit :

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
      ...
      <PackageIcon>icon.png</PackageIcon>
      ...
  </PropertyGroup>

  <ItemGroup>
      ...
      <None Include="images\icon.png" Pack="true" PackagePath=""/>
      ...
  </ItemGroup>
</Project>

Pour les fichiers nuspec, ajoutez une entrée <icon/> qui pointe vers le fichier qui sera l’icône de package :

<package>
  <metadata>
    ...
    <icon>images\icon.png</icon>
    ...
  </metadata>
  <files>
    ...
    <file src="..\icon.png" target="images\" />
    ...
  </files>
</package>

En savoir plus sur l’empaquetage d’un fichier image d’icône.