Ошибка при подключении NuGet-пакета

182
14 марта 2022, 05:30

Имеется NuGet-пакет. Он создавался со следующей структурой. Всё, вроде бы хорошо, но при попытке подключения его к программе под NET 4.0 вылетает ошибка:

Could not install package 'NETMouseProjects.ABCNET 0.0.10'. You are trying to install this package into a project that targets '.NETFramework,Version=v4.0', but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author.                               

Проблема в том, что я не понимаю почему это происходит и как исправить. Сама библиотека, как и программа, работает на 4-ом NET (я пробовал и другие версии NET - ошибка всё равно есть). Создавал я его через nuget.exe.

Answer 1

Вот .nuspec пакета:

<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2011/10/nuspec.xsd">
  <metadata>
    <id>NETMouseProjects.ABCNET</id>
    <version>0.0.10-stable</version>
    <authors>NETMouse projects</authors>
    <owners>NETMouse projects</owners>
    <requireLicenseAcceptance>true</requireLicenseAcceptance>
    <license type="expression">LGPL-3.0-only</license>
    <licenseUrl>https://licenses.nuget.org/LGPL-3.0-only</licenseUrl>
    <icon>Logo.png</icon>
    <projectUrl>https://github.com/NETMouse-projects/ABCNET</projectUrl>
    <description>ABCNET - альтернатива модулю PABCSystem для всего NET.</description>
    <releaseNotes>- Batch
      - Pairwise
      - Associate
      - ZupTuple/UnzipTuple
      - SwapCols/SwapRows</releaseNotes>
    <copyright>Copyright 2020</copyright>
    <tags>NETMouseProjects, ABCNET</tags>
  </metadata>
</package>

В нем нет ни одной библиотеки, не то что под .NET 4.0. Добавьте элемент files:

<?xml version="1.0"?>
<package >
  <metadata>
    ...
  </metadata>
  <files>
        <file src="lib\net40\*" target="lib/net40/" />        
  </files>
</package>

Тогда заработает. При этом библиотека должна лежать в подкаталоге lib\net40\. Вообще, обычно nuget pack должен сам файлы библиотек находить и генерировать files, возможно, нужно просто положить их по правильному пути.

READ ALSO
Смена цвета BorderBrush у ComboBox по нажатию кнопки. C# WPF XAML

Смена цвета BorderBrush у ComboBox по нажатию кнопки. C# WPF XAML

Есть comboBox и кнопка, Если мы нажимаем на кнопку и в comboBox ничего не выбрано, SelectItem == null, то надо изменить цвет BorderBrush данного comboBox-а

183
Как лучше сохранять картинки? [закрыт]

Как лучше сохранять картинки? [закрыт]

Хотите улучшить этот вопрос? Переформулируйте вопрос так, чтобы он был сосредоточен только на одной проблеме

146
VS 2019 в режиме отладки закрывает окно

VS 2019 в режиме отладки закрывает окно

Windows 10 x64Visual Studio 2019 Enterprise

113
Как получить имена аргументов?

Как получить имена аргументов?

Допустим есть следующий метод:

162