Почему что-то ищет VsixUtil.exe здесь? - PullRequest
0 голосов
/ 09 октября 2018

У меня есть решение, которое является расширением VS, которое компилируется в VSIX.Я удалил папку с пакетами, построил решение и получил ошибку ... The specified task executable location "D:\git\QueryFirst\packages\Microsoft.VSSDK.BuildTools.15.0.26201\tools\VSSDK\bin\VsixUtil.exe" is invalid.

Папка существует, но, разумеется, VsixUtil.exe в ней нет.Я установил VsixUtil с Nuget, но он не идет в это место.Почему мое решение ищет VsixUtil в этом месте.Могу ли я указать это где-нибудь еще?Или установить его там?

Я на VS 2017 Enterprise.

1 Ответ

0 голосов
/ 12 октября 2018

Утилита VsixUtil.exe не должна загружаться / устанавливаться отдельно.Пакет NuGet, который вы использовали для загрузки, не является «официальным» от Microsoft или VisualStudioExtensibility.

Очевидно, что в вашем проекте существует несоответствие версий между двумя VSSDK:

  • , проект являетсяс помощью недавнего файла Microsoft.VsSDK.targets, в котором используется задача VsixUtil:
  <UsingTask TaskName="VsixUtil" AssemblyFile="$(VsSDKAssemblyFile)" />
  • , но он отправляется в папку старого VSSDK (Microsoft.VSSDK.BuildTools.15.0.26201), для которой не требуется файл VsixUtil.exe, необходимый для этой задачи.

Обновите пакет NuGet для вашего проекта Microsoft.VSSDK.BuildTools, чтобы использовать последние версии 15.8..x (15.8.3252 или 15.8.3247), которые включают VsixUtil.exe в папку tools \ vssdk \ bin.

...