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


Предупреждение NuGet NU1604

Недостающая версия пакета

Зависимость проекта PackageA не содержит инклюзивную нижнюю границу. Включите нижнюю границу в версию зависимостей, чтобы обеспечить согласованные результаты восстановления.

Выпуск

Зависимость проекта не определяет версию.

Это означает, что восстановление использовало самую низкую доступную версию. Каждое восстановление будет плавать вниз, пытаясь найти более низкую версию, которую можно использовать. Это означает, что восстановление выполняется в сети, чтобы проверять все источники каждый раз, а не использовать пакеты, которые уже существуют в папке пользовательского пакета.

Решение

Найдите элемент PackageReference, который не определяет атрибут Version и добавьте его:

Например, изменение с:

<PackageReference Include="PackageA" />

Кому:

<PackageReference Include="PackageA" Version="9.0.0" />

Если проект использует центральное управление пакетами NuGet (CPM), необходимо обновить элемент <PackageVersion /> в Directory.Packages.props и изменить его:

<PackageVersion Include="PackageA" />

Кому:

<PackageVersion Include="PackageA" Version="9.0.0" />

Если версия указана в элементе <PackageVersion /> и вы по-прежнему получаете это предупреждение, убедитесь, что вы правильно подключены к централизованному управлению пакетами.

Заметка

При использовании CPM и файла, Directory.Packages.props, возникает ошибка NU1604.

Отсутствует инклюзивная нижняя граница

Зависимость проекта PackageA (<= 9.0.0) не содержит инклюзивной нижней границы. Включите нижнюю границу в версию зависимостей, чтобы обеспечить согласованные результаты восстановления.

Выпуск

Зависимость проекта не определяет нижнюю границу.

Это означает, что восстановление не обнаружило лучшего соответствия. Каждое восстановление будет плавать вниз, пытаясь найти более низкую версию, которую можно использовать. Это означает, что восстановление выполняется в сети, чтобы проверять все источники каждый раз, а не использовать пакеты, которые уже существуют в папке пользовательского пакета.

Решение

Обновите атрибут PackageReferenceVersion проекта, чтобы включить нижнюю границу. Например, изменение с:

<PackageReference Version="(9.0.0, )" />

Кому:

<PackageReference Version="[9.0.0, )" />

или

<PackageReference Version="9.0.0" />

это означает нижнюю границу.

Если проект использует центральное управление пакетами NuGet (CPM), необходимо обновить элемент <PackageVersion /> в Directory.Packages.props и изменить его:

<PackageVersion Include="PackageA" Version="(9.0.0, )" />

Кому:

<PackageVersion Include="PackageA" Version="9.0.0" />