Поделиться через


Ошибка NuGet NU5046

Файл значка "icon.png" не существует в пакете.

Проблема

NuGet не может найти файл значка в пакете.

Решение

  • Убедитесь, что файл, помеченный как значок пакета, существует в источнике и доступен для чтения, а целевой объект соответствует пути, ожидаемому свойством icon .
  • Убедитесь, что файл ссылается на nuspec или в файле проекта.
    • При создании пакета из файла проекта MSBuild обязательно сослаться на файл значка в проекте, как показано ниже.

      <Project Sdk="Microsoft.NET.Sdk">
        <PropertyGroup>
            ...
            <PackageIcon>icon.png</PackageIcon>
            ...
        </PropertyGroup>
      
        <ItemGroup>
            ...
            <None Include="images\icon.png" Pack="true" PackagePath=""/>
            ...
        </ItemGroup>
      </Project>
      
    • При создании пакета из nuspec-файла обязательно включите файл значка в <files/> раздел:

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

Дополнительные сведения о упаковке файла изображения значка.