Ошибка при создании MSBuild для проекта CLR Storedprocedure на сервере сборки - PullRequest
5 голосов
/ 15 февраля 2010

При построении проекта хранимой процедуры CLR с использованием MSBuild на нашем сервере сборки (Team City) мы получаем следующую ошибку:

ошибка MSB4019: импортированный проект "C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ SqlServer.targets "не найден.Убедитесь, что путь в объявлении правильный, и что файл существует на диске

Я проверил, существует ли файл на диске, и, конечно же, его нет.Я проверил на своем компьютере, и он существует.

Я не хочу начинать копирование файлов вручную на сервер сборки.

Вот строка из файла csproj, который импортируется в файл proj:

  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
  <Import Project="$(MSBuildToolsPath)\SqlServer.targets" />

Вот строка из файла proj, который запускается нашим Team City Server:

<Import Project="..\$(ProjectName).csproj"/>

Мой вопрос на самом деле:

Откуда этот файл?Например, это часть установки Visual Studio .. Или есть какой-то пакет распространения, который позволяет мне скомпилировать этот проект на нашем сервере сборки?

Спасибо

Кстати ... еслия просто копирую файл на сервер сборки, он действительно работает.

Дейв

Ответы [ 2 ]

2 голосов
/ 19 марта 2010

Похоже, это часть установки фреймворка v2.0, которая после добавления перемещается в каталог v3.5. Вы можете переустановить v2.0 платформы или вручную скопировать файл из папки v3.5.

0 голосов
/ 07 июня 2016

До Visual Studio 2012 SqlServer.targets был развернут в msbuild.exe расположении .NET Framework, например

  • c:\Windows\Microsoft.NET\Framework\v4.0.30319\
  • c:\Windows\Microsoft.NET\Framework\v3.5\
  • c:\Windows\Microsoft.NET\Framework\v2.0\

В современных версиях, начиная с Visual Studio 2013, инструмент MSBuild включен в Visual Studio, а файлы MSBuild.exe и .targets развертываются в своей собственной папке. Например для Visual Studio 2013:

  • c: \ Program Files (x86) \ MSBuild \ 12.0 \ Bin \

(ПРИМЕЧАНИЕ: 12.0 - это "внутренний" номер версии VS2013)

ВАЖНОЕ ПРИМЕЧАНИЕ: SqlServer.targets существует, только если вы устанавливаете средства данных SQL Server в развертывании Visual Studio.

...