web-dev-qa-db-fra.com

VS 2013 SqlBuildTask 04018 Erreur

Après la mise à jour vers un service pack récent, mon projet de base de données n'est plus généré.

Je reçois l'erreur suivante:

Erreur 1 04018: la tâche "SqlBuildTask" a échoué de manière inattendue. System.MethodAccessException: tentative par la méthode 'Microsoft.Data.Tools.Schema.Sql.Build.SqlTaskHost.OnCreateCustomSchemaData (System.String, System.Collections.Generic.Dictionary2<System.String,System.String>)' to access method 'Microsoft.Data.Tools.Components.Diagnostics.SqlTracer.ShouldTrace(System.Diagnostics.TraceEventType)' failed. at Microsoft.Data.Tools.Schema.Sql.Build.SqlTaskHost.OnCreateCustomSchemaData(String filePath, Dictionary2 referenceMetadata) à Microsoft.Data.Tools.Schema.Sql.Build.SqlTaskHost.CreateCustomSchemaData (String FilePath, Dictionary2 referenceMetadata) at Microsoft.Data.Tools.Schema.Tasks.Sql.TaskHostLoader.ProcessReferences(TaskLoggingHelper providedLogger, SqlTaskHost Host, ErrorManager errors) at Microsoft.Data.Tools.Schema.Tasks.Sql.TaskHostLoader.LoadImpl(ITaskHost providedHost, TaskLoggingHelper providedLogger) at Microsoft.Data.Tools.Schema.Tasks.Sql.TaskHostLoader.Load(ITaskHost providedHost, TaskLoggingHelper providedLogger) at Microsoft.Data.Tools.Schema.Tasks.Sql.SqlBuildTask.ExecuteLoadTaskHostStep() at Microsoft.Data.Tools.Schema.Tasks.Sql.SqlBuildTask.ExecuteStep(Func1 . étape) à Microsoft.Data.Tools.Schema.Tasks.Sql.SqlBuildTask.Execute () à Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BuEdit.BackEnd.ITaskExecutionHost.Execute () à Microsoft.Build.BackEnd.TaskBuilder.d__20.MoveNext () C:\Program Fichiers (x86)\MSBuild\Microsoft\VisualStudio\v12 .0\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets

J'ai essayé de redémarrer et de réparer VS2013 Merci pour vos pensées. 

13
Franklin

Vous devez installer la dernière version de SQL Server Data Tools http://msdn.Microsoft.com/en-US/data/hh297027

11
Mauro Bilotti

La mise à jour vers le dernier SSDT ne fonctionnait pas pour moi.

Ma configuration:

Win 7 Enterprise, VS Express 2013 v12.0.31101.00 Mise à jour 4, .NET 4.5.51209

Ma solution qui a fonctionné:

  1. Désinstallez toutes les versions antérieures de SQL Server, dans mon cas 2005, 2005 Mobile 2008, Compact Editions, etc. J'ai laissé les fichiers de support d'installation 2008.
  2. Désinstallez également SSDT
  3. Téléchargez et installez les derniers outils de données SQL Server http://msdn.Microsoft.com/en-US/data/hh297027 (à partir du 08/8/15, il s'agit de la version 12.0.50318.0)
  4. Rechargez le (s) projet (s), nettoyez, reconstruisez et aucune erreur!
1
S Mark Courter

Je devais faire tout ce qui précède et un peu plus.

  1. Installer le dernier service pack pour ma version de SQL (2012)
  2. Mettre à jour le SSDT
  3. Supprimez les anciens fichiers SSDT du nouvel emplacement d'installation.
  4. Ouvrez les propriétés du projet et décochez "Activer la vérification transact-SQL étendue pour les objets courants"
0
Tresto

Ok, la solution qui a fonctionné pour moi:

J'ai comparé les dates et les versions des fichiers: 

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\SSDT\Microsoft.Data.Tools.Schema.Sql.UnitTesting.targets
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets

et les versions de ma machine de compilation avaient un an de plus que celles de ma machine de développement. J'ai donc copié mes fichiers de machine de développement pour construire le serveur, et cela fonctionne ...

MSBuild, sérieusement?

0
ashantiel