Share via


Erro do NuGet NU5046

The icon file 'icon.png' does not exist in the package.

Problema

O NuGet não consegue localizar o arquivo de ícone no pacote.

Solução

  • Verifique se o arquivo marcado como ícone do pacote existe na origem e é legível, e o destino corresponde ao caminho esperado pela propriedade icon.
  • O arquivo deve ser referenciado na nuspec ou no arquivo de projeto.
    • Ao criar um pacote com base em um arquivo de projeto MSBuild, faça referência ao arquivo de ícone no projeto da seguinte maneira:

      <Project Sdk="Microsoft.NET.Sdk">
        <PropertyGroup>
            ...
            <PackageIcon>icon.png</PackageIcon>
            ...
        </PropertyGroup>
      
        <ItemGroup>
            ...
            <None Include="images\icon.png" Pack="true" PackagePath=""/>
            ...
        </ItemGroup>
      </Project>
      
    • Ao criar um pacote com base em um arquivo nuspec, inclua o arquivo de ícone na seção <files/>:

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

Saiba mais sobre como empacotar um arquivo de imagem de ícone.