Предупреждение NuGet NU5131
Ссылки были найдены в nuspec, но некоторые эталонные сборки не найдены в папке nuspec и ref. Добавьте следующие эталонные сборки:
- Добавление AssemblyName.dll в каталог ref/net472/
Проблема
NuGet имеет функцию, которая позволяет авторам пакетов выбирать, какие сборки будут доступны во время компиляции в проектах, использующих пакет.
Если необходимые соглашения не следуют, проекты, использующие пакет, PackageReference
могут завершиться ошибкой во время выполнения из-за отсутствия сборок.
Решение
Список сборок в разделе nuspec-файла <references>
должен содержать соответствующие сборки ref/<tfm>/
.
Например, рассмотрим пакет со следующими файлами:
lib\net472\MyLib.dll
lib\net472\MyHelpers.dll
lib\net472\MyUtilities.dll
Автор пакета хочет запретить потребителям пакетов писать код, который напрямую вызывается MyUtilities.dll
, поэтому они добавляют следующий код в файл nuspec:
<references>
<group targetFramework="net472">
<reference file="MyLib.dll" />
<reference file="MyHelpers.dll" />
</group>
</references>
Этот пакет не будет работать должным образом при использовании PackageReference
. Чтобы устранить эту проблему, пакет должен содержать следующие файлы:
ref\net472\MyLib.dll
ref\net472\MyHelpers.dll