Visual Studio 2013: помилка проекту бази даних MSBuild


74

У мене є проект бази даних як частина мого рішення в Visual Studio 2013. Я працюю ідеально протягом останніх 3 тижнів, і тепер раптом сьогодні він не буде побудований, тому я не можу публікувати будь-які зміни. Я отримую помилку MSBuild:

"C: \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ v12.0 \ SSDT \ Microsoft.Data.Tools.Schema.SqlTasks.targets (513,5): Помилка: MSB4018: Завдання" SqlBuildTask "несподівано не вдалося виконати . System.MethodAccessException: Спроба методом 'Microsoft.Data.Tools.Schema.Sql.Build.SqlTaskHost.OnCreateCustomSchemaData (System.String, System.Collections.Generic.Dictionary`2)' для доступу до методу 'Microsoft.Data.Tools. Components.Diagnostics.SqlTracer.ShouldTrace (System.Diagnostics.TraceEventType) 'не вдалося. "

У когось є якісь ідеї? Все, що я зробив сьогодні вранці, - це зняти останні зміни з контролю джерел. Я не можу зрозуміти, як це могло заплутати фактичний MSBuildпроцес, і хлопець, який зареєструвався останнім, взагалі не має жодних проблем.


3
Переконайтеся, що у вас та іншого розробника встановлена ​​однакова версія SQL Server Data Tools, або просто спробуйте встановити останню версію.
Кіт

Я переінсталював Data Tools, відремонтував Visual Studio та SQL-сервер. Досі не везе. Це зводить мене з розуму.
GooseZA

У мене Точно така ж проблема
dalcam

1
Проблемою виявилося оновлення VS 2013 3. Перевстановлено та не зробило оновлення (тому залишилось на оновленні 2), і воно працює чудово.
GooseZA

6
Схоже, це також не виправлено станом на оновлення 4 ...
Гері О. Стенстрем

Відповіді:


53

Вам потрібно встановити останню версію інструментів даних SQL Server:

http://msdn.microsoft.com/en-US/data/hh297027

Переконайтеся, що перезапустили VS, а потім знову створили рішення. Це вирішує проблему!


3
Це рішення працювало для мене з встановленим VS2013 (оновлення 4).
Alan Samet

2
Для мого VS2013 (Community Edition з оновленням 4) це рішення також спрацювало.
MKP

2
Я його вже встановив, але, мабуть, пошкодив - встановлення / ремонт спрацював.
користувач489998

18

У Visual Studio 2013 -> Інструменти -> Розширення та оновлення ... -> Оновлення -> Оновлення продукту -> Оновлення Microsoft SQL Server для бази даних до 12.0.50318.0

Я переходив із версії 12.0.41012.0, і це вирішило мою проблему. Це стосується відповіді на встановлення найновіших інструментів даних SQL Server.


Це вирішило це для мене, оновлене з 12.0.41012.0 до 12.0.50730.0
JSancho

його вирішено мою проблему, я просто оновити SQL Server до VS2013. спасибі @Brandon
adnan

6

Я використовую Visual Studio Community 2013.

У мене була та ж помилка:

Виправити це можна, оновивши інструменти SQL Server:

Tools --> Extensions and Updates

введіть тут опис зображення

Потім у розділі «Оновлення продукту» ви побачите опцію оновлення SQL Server Update.

Клацніть на Оновити, після встановлення перезапустіть Visual Studio.

введіть тут опис зображення



3

Я шукав "Visual Studio 2013 Update 2" у завантаженнях передплатників MSDN, і воно там було

Також я повідомив про помилку з помилкою MS VS2013 SqlBuildTask 04018. Будь ласка, проголосуйте за неї, якщо у вас така сама проблема


3

У мене була та сама проблема. Я намагався відновити Visual Studio 2013, оновлення 4, SSDT, інструменти ЦАП тощо, але це не спрацювало нічого кращого.

Однак я помітив, що Microsoft.Data.Tools.Schema.SqlTasks.targetsфайл, що міститься у, C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\SSDTдатований 2013 роком (насправді він відповідав старому SSDT). Отже, я просто скопіював нову (яку я здивовано знайшов у C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\SSDT...) до цієї папки v12.0 \ SSDT, перезапустив Visual Studio 2013, і тепер вона працює. Для інформації цей новий цільовий файл SSDT датований 26.10.2014 та його розмір становить 75437 байт.


1
Це була проблема для мене і мого товариша. У нього також були файли .targets з 2013 року, C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\SSDTале в v11.0папці у нього не було "хороших" . Я надіслав йому повідомлення зі свого комп’ютера. Це призвело до чергової помилки збірки, яка виявила, що йому потрібно оновити Sql Server.
Адам Прескотт,

1
це врятувало мого товариша, і я стільки часу!
Тресто,

1

Виявляється, проблема була в Visual Studio Update 3. Я видалив та перевстановив VS 2013 лише до оновлення 2 та переінсталював Інструменти даних, і зараз він прекрасно працює.


Привіт @GooseZA, де ти знаходиш VS2013 з оновленням 2? У мене є лише Vs2013 Update 3 у моєму msdn ... Заздалегідь дякую.
dalcam

2
Привіт @Goose, я видалив VS 2013 і перевстановив оновлення 2, але ви згадали, що також переінсталювали Data Tools. Як ти це робиш? Оскільки моя все ще зламана (та сама помилка) на Vs2013 Update 2 ... Дякую
dalcam

1

У мене вже була встановлена ​​найновіша версія SQL Data Tools, але після встановлення VS2015 RC вона перестала працювати. Після запуску ремонту на SSDT він знову успішно компілюється.


1

У мене було встановлено Visual Studio 2013, оновлення 5, і виникала ця проблема. Я виконав ці кроки згори, і це вирішило проблему для мене ->

У Visual Studio 2013 -> Інструменти -> Розширення та оновлення ... -> Оновлення -> Оновлення продукту -> Оновлення Microsoft SQL Server для бази даних до 12.0.50730.0


Я провів ремонт у Visual Studio 2013, але це не вирішило проблему. Потім я провів ремонт на встановленій версії SSDT; це вирішило проблему.
Зарефет

1

У мене була та сама проблема, і я просто перезапустив Visual Studio, і це працює для мене.


0

Якщо це комусь допомагає, я встановив VS2014 CTP 3, і я можу будувати з нього. Цікаво, що після успішної збірки в vs2014, наступного разу, коли ви зберете VS2013, це буде працювати. Але подальші збірки у VS2013 не працюють, доки ви не відновите їх у VS2014.


0

Я зміг виправити проблему, відремонтувавши інструменти даних Microsoft SQL Server і перезапустивши Visual Studio 2013. Панель керування> Клацніть правою кнопкою миші: «Інструменти даних Microsoft SQL Server»> Клацніть: «Відновити»> Перезапустити Visual Studio


0

У мене була та сама проблема. Запуск перевірки диска, а потім перезавантаження виправили це.


0

Я відчув ту ж проблему з дещо іншим трасуванням стека:

Помилка MSB4018: Завдання "SqlBuildTask" несподівано не вдалося. System.IO.IOException: файл існує.

Виявляється, це проблема з директорією Temp для облікового запису служби, який я використовував, я думаю, якщо ви перевищите X кількість папок / файлів у цьому каталозі, публікація більше не працюватиме. Виправлено цю проблему, дотримуючись інструкцій, згаданих тут (для мого облікового запису служби):

  • Перейдіть на старт-> запустіть
  • Введіть% temp% і натисніть кнопку ОК
  • Переконайтесь, що ви знаходитесь у папці / Місцевий / Темп
  • Видаліть усе в цій папці

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.