Visual Studio 2013: MSBuild-Fehler im Datenbankprojekt

74

Ich habe ein Datenbankprojekt als Teil meiner Lösung in Visual Studio 2013. Ich habe in den letzten 3 Wochen perfekt funktioniert und jetzt wird es heute plötzlich nicht mehr erstellt und ich kann keine Änderungen veröffentlichen. Ich erhalte einen MSBuild-Fehler:

"C: \ Programme (x86) \ MSBuild \ Microsoft \ VisualStudio \ v12.0 \ SSDT \ Microsoft.Data.Tools.Schema.SqlTasks.targets (513,5): Fehler: MSB4018: Die Task" SqlBuildTask "ist unerwartet fehlgeschlagen System.MethodAccessException: Versuch der Methode 'Microsoft.Data.Tools.Schema.Sql.Build.SqlTaskHost.OnCreateCustomSchemaData (System.String, System.Collections.Generic.Dictionary`2)', auf die Methode 'Microsoft.Data.Tools' zuzugreifen. Components.Diagnostics.SqlTracer.ShouldTrace (System.Diagnostics.TraceEventType) 'fehlgeschlagen. "

Hat jemand irgendwelche Ideen? Alles, was ich heute Morgen getan habe, war, die neuesten Änderungen aus der Quellcodeverwaltung herauszuholen. Ich kann nicht sehen, wie das den eigentlichen MSBuildProzess durcheinander bringen würde , und der Typ, der zuletzt eingecheckt hat, hat überhaupt keine Probleme.

GooseZA
quelle
3
Stellen Sie sicher, dass Sie und der andere Entwickler dieselbe Version von SQL Server Data Tools installiert haben, oder versuchen Sie einfach, die neueste Version zu installieren.
Keith
Ich habe Data Tools neu installiert, Visual Studio und SQL Server repariert. Immer noch kein Glück. Das macht mich verrückt.
GooseZA
Ich habe genau das gleiche Problem
Dalcam
1
Es stellte sich heraus, dass das Problem VS 2013 Update 3 war. Neu installiert und das Update nicht durchgeführt (blieb also bei Update 2) und es funktioniert einwandfrei.
GooseZA
6
Es sieht so aus, als ob dies ab Update 4 immer noch nicht behoben ist ...
Gary O. Stenstrom

Antworten:

53

Sie müssen die letzte Version von SQL Server Data Tools installieren:

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

Stellen Sie sicher, dass Sie VS neu starten und die Lösung erneut erstellen. Dies löst das Problem!

Mauro Bilotti
quelle
3
Diese Lösung funktionierte bei mir mit installiertem VS2013 (Update 4).
Alan Samet
2
Für meinen VS2013 (Community Edition mit Update 4) funktionierte diese Lösung ebenfalls.
MKP
2
Ich hatte es bereits installiert, aber es muss beschädigt worden sein - eine Installation / Reparatur hat funktioniert.
Benutzer489998
18

In Visual Studio 2013 -> Tools -> Erweiterungen und Updates ... -> Updates -> Produktupdates -> Microsoft SQL Server-Update für Datenbank auf 12.0.50318.0

Ich habe ein Upgrade von 12.0.41012.0 durchgeführt und dadurch mein Problem behoben. Dies bezieht sich auf die Antwort zum Installieren der neuesten SQL Server-Datentools.

Brandon Hawbaker
quelle
Dies löste es für mich, aktualisiert von 12.0.41012.0 auf 12.0.50730.0
JSancho
Es hat mein Problem behoben, ich aktualisiere nur den SQL Server durch VS2013. danke @Brandon
adnan
6

Ich verwende Visual Studio Community 2013.

Ich hatte den gleichen Fehler:

Sie können das Problem beheben, indem Sie die SQL Server-Tools aktualisieren:

Tools --> Extensions and Updates

Geben Sie hier die Bildbeschreibung ein

Dann sehen Sie unter Produktupdates eine Option zum Aktualisieren von SQL Server Update.

Klicken Sie auf Update, nachdem Visual Studio installiert wurde. Starten Sie Visual Studio neu.

Geben Sie hier die Bildbeschreibung ein

Dawood Awan
quelle
3

Ich habe in MSDN-Abonnenten-Downloads nach "Visual Studio 2013 Update 2" gesucht und es war da

Außerdem habe ich einen Fehler bei MS VS2013 SqlBuildTask 04018 Fehler gemeldet. Bitte stimmen Sie ab, wenn Sie das gleiche Problem haben

Franklin
quelle
3

Ich hatte das gleiche Problem. Ich habe versucht, Visual Studio 2013, Update 4, SSDT, die DAC-Tools usw. zu reparieren, aber es hat nicht besser funktioniert.

Ich bemerkte jedoch, dass die darin enthaltene Microsoft.Data.Tools.Schema.SqlTasks.targetsDatei C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\SSDTaus dem Jahr 2013 stammt (tatsächlich entsprach sie der alten SSDT). Also habe ich einfach das neue (das ich überraschenderweise in C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\SSDT... gefunden habe) in diesen Ordner v12.0 \ SSDT kopiert, Visual Studio 2013 neu gestartet und jetzt funktioniert es. Zur Information: Diese neue SSDT-Zieldatei ist vom 26.10.2014 datiert und hat eine Größe von 75437 Byte.

Simon Mourier
quelle
1
Das war das Problem für mich und meinen Kameraden. Er hatte auch .targets-Dateien aus dem Jahr 2013, C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\SSDTaber er hatte keine "guten" im v11.0Ordner. Ich habe ihm die von meinem Computer aus per E-Mail geschickt. Das führte uns zu einem weiteren Build-Fehler, der ergab, dass er SQL Server aktualisieren musste.
Adam Prescott
1
Das hat meinem Kameraden und mir so viel Zeit gespart!
Tresto
1

Es stellte sich heraus, dass das Problem bei Visual Studio Update 3 lag. Ich habe VS 2013 nur auf Update 2 deinstalliert und neu installiert und Data Tools neu installiert, und es funktioniert jetzt einwandfrei.

GooseZA
quelle
Hallo @GooseZA, wo findest du den VS2013 mit Update 2? Ich habe nur Vs2013 Update 3 in meiner MSDN ... Vielen Dank im Voraus.
Dalcam
2
Hallo @Goose, ich habe VS 2013 deinstalliert und auf Update 2 neu installiert, aber Sie haben erwähnt, dass Sie auch Data Tools neu installiert haben. Wie machst du das? Da meins noch kaputt ist (gleicher Fehler) auf Vs2013 Update 2 ... Danke
dalcam
1

Ich hatte bereits die neueste Version von SQL Data Tools installiert, aber nach der Installation von VS2015 RC funktionierte sie nicht mehr. Nach einer Reparatur auf SSDT wird diese erneut erfolgreich kompiliert.

Martinoss
quelle
1

Ich hatte Visual Studio 2013 Update 5 installiert und hatte dieses Problem. Ich habe diese Schritte von oben befolgt und das Problem für mich behoben ->

In Visual Studio 2013 -> Tools -> Erweiterungen und Updates ... -> Updates -> Produktupdates -> Microsoft SQL Server-Update für Datenbank auf 12.0.50730.0

Sagar
quelle
Ich habe eine Reparatur in Visual Studio 2013 ausgeführt, aber das Problem wurde dadurch nicht behoben. Ich habe dann eine Reparatur an der installierten Version von SSDT durchgeführt. Dies hat das Problem behoben.
Zarepheth
1

Ich hatte das gleiche Problem und starte Visual Studio einfach neu und es funktioniert für mich.

Aatish Landge
quelle
0

Wenn es jemandem hilft, habe ich VS2014 CTP 3 installiert und kann daraus bauen. Interessanterweise funktioniert es nach einem erfolgreichen Build in vs2014 beim nächsten Build in VS2013. Nachfolgende Builds in VS2013 funktionieren jedoch erst, wenn Sie in VS2014 neu erstellen.

Dalcam
quelle
0

Ich konnte das Problem beheben, indem ich Microsoft SQL Server-Datentools reparierte und Visual Studio 2013 neu startete. Systemsteuerung> Rechtsklick: "Microsoft SQL Server-Datentools"> Klicken Sie auf "Reparieren"> Visual Studio neu starten

Jamie M.
quelle
0

Ich hatte das gleiche Problem. Durch Ausführen der Festplattenprüfung und anschließendes Neustarten wurde das Problem behoben.

QgecNick
quelle
0

Ich habe das gleiche Problem mit einer etwas anderen Stapelverfolgung festgestellt:

Fehler MSB4018: Die Aufgabe "SqlBuildTask" ist unerwartet fehlgeschlagen. System.IO.IOException: Die Datei ist vorhanden.

Es stellt sich heraus, dass dies ein Problem mit dem Temp-Verzeichnis für das von mir verwendete Dienstkonto ist. Ich denke, wenn Sie die X-Anzahl von Ordnern / Dateien in diesem Verzeichnis überschreiten, funktioniert die Veröffentlichung nicht mehr. Dieses Problem wurde behoben, indem die hier genannten Anweisungen befolgt wurden (für mein Dienstkonto):

  • Start-> Ausführen
  • Geben Sie% temp% ein und klicken Sie auf OK
  • Stellen Sie sicher, dass Sie sich im Ordner / Local / Temp befinden
  • Löschen Sie alles in diesem Ordner
David Rogers
quelle
-1

Ich habe den gleichen Fehler erhalten und ihn durch Neuinstallation von Visual Studio 2015 behoben

user5365082
quelle