Я работаю над проектом, который использует nuget, но не использует восстановление пакета. (Это решение вне моего контроля, кстати, поэтому любые ответы, связанные с включением восстановления пакета, не являются теми, которые я смогу использовать.)
Несколько проектов в решении (4 из 34 из них, проект магазина приложений WinJS, две обычные библиотеки классов .NET и один из моих облачных проектов Azure) сообщают об этом печально известном предупреждении:
...packages\Microsoft.Bcl.Build.1.0.13\tools\Microsoft.Bcl.Build.targets(225,5): warning : All projects referencing Valhalla.Consumer.Core.csproj must install nuget package Microsoft.Bcl.Build. For more information, see http://go.microsoft.com/fwlink/?LinkID=317569.
Эта ссылка предполагает, что я хочу включить восстановление пакета. Так что каждый другой совет, который мне удалось найти на данный момент, по этому вопросу.
Я попытался отключить восстановление пакетов в Options → Package Manager → Общие настройки, кстати. Это не помогает (и даже если бы это было так, это было бы нежелательно - я использую восстановление пакета во всем остальном, над чем я работаю).
Я действительно не понимаю, почему я получаю это в решении, которое не использует восстановление пакета. Насколько я понимаю, весь пакет запрашиваемого пакета - это поддержка восстановления пакета. Поэтому в решении, в котором восстановление пакета не используется, кажется, что этот пакет нечетный.
Однако, похоже, что некоторые другие пакеты nuget заставляют вас зависеть от этого. У меня есть компонент Windows Runtime Component, который использует Microsoft.Bcl
, пакет nuget, который по какой-то причине имеет зависимость от Microsoft.Bcl.Build
. (Visual Studio, казалось, добавила мне пакет Microsoft.Bcl
, когда я создал проект. Предположительно, это необходимо.) Другие проекты, похоже, приобретают зависимость от Microsoft.Bcl.Build
через клиентские библиотеки HTTP.
По-видимому, некоторые общие пакеты nuget, похоже, вынуждают зависимость от Microsoft.Bcl.Build
независимо от того, используете ли вы восстановление пакета.
Это было бы хорошо, если бы вы могли устранить это предупреждение, просто добавив соответствующий пакет ко всем проектам, которые получают это предупреждение. Но досадно, что даже если я добавлю пакет Microsoft.Bcl.Build
к потребляющим компонентам (например, моему WinJS Window Store), я все равно получаю это предупреждение! (Поэтому он продолжает жаловаться, что мне нужно установить пакет nuget даже после того, как я его установил.)
Кто-нибудь знает, как устранить это предупреждение в этой ситуации? Выполнение того, что он мне просит, кажется недостаточным. Что пропало?