Nuget не добавляет ссылку на сборки, имя которых заканчивается на .Resources

При использовании диспетчера пакетов NuGet для установки пакета, содержащего сборку, имя которой заканчивается на .Resources, пакет устанавливается правильно, но ссылка на эту сборку не добавляется в проект.

Инструменты: -

  • Visual Studio Enterprise 2015 v4.6.00081
  • Диспетчер пакетов NuGet для Visual Studio 2015 v3.2.60914.10516

.nuspec-файл:

<?xml version="1.0"?>
<package >
  <metadata>
    <id>ClassLibrary.TestPackage</id>
    <version>1.0.0.0</version>
    <title>ClassLibrary.TestPackage</title>
    <authors>Me</authors>
    <owners>Me</owners>
    <requireLicenseAcceptance>false</requireLicenseAcceptance>
    <description>$description$</description>
    <tags></tags>
  </metadata>
</package>

Содержимое .nupkg: -

  • lib
    • net46 (.NETFramework,Version=4.6)
    • ClassLibrary.Resource.dll
    • ClassLibrary.Resources.dll
    • ClassLibrary.Resourcex.dll
    • ClassLibrary.ResourcesWhatever.dll
    • ClassLibrary.Что угодно.dll
    • ClassLibrary.WhateverResources.dll

Все 6 сборок представляют собой пустые библиотеки классов, предназначенные для .Net 4.6.

При установке пакета nuget добавляются ссылки на все сборки, кроме:

  • ClassLibrary.Resources.dll

Может показаться, что именно сборки, имя которых заканчивается на .Resources, вызывают проблему.

Проблема продолжается и дальше при обновлении такой сборки - ссылка остается указывая на предыдущую версию да и сам пакет остается в папке packages.

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


person Wayne Birch    schedule 01.10.2015    source источник


Ответы (1)


Похоже, это по дизайну: -

https://github.com/NuGet/Home/issues/1499

person Wayne Birch    schedule 06.10.2015
comment
Нет ли обходного пути для этого? У меня есть сторонняя библиотека, которая заканчивается на *.resources.dll — я не хочу переименовывать ее только для того, чтобы Nuget заработал. Это мой единственный вариант :-( - person Mark Cooper; 05.11.2015
comment
Мне еще предстоит найти какой-либо обходной путь, кроме переименования dll или ручного обращения со ссылками. - person Wayne Birch; 21.06.2016