我有两个Visual Studio数据库项目。两者都在我的本地开发环境中构建良好。
在tfs build服务器上,使用包含两个项目的tfs build解决方案,一个生成良好,另一个生成失败,并出现此错误:
Task "SqlBuildTask"
Creating a model to represent the project...
C:\Program Files\MSBuild\Microsoft\VisualStudio\v9.0\TeamData\Microsoft.Data.Schema.SqlTasks.targets(58,5): error MSB4018: The "SqlBuildTask" task failed unexpectedly.
C:\Program Files\MSBuild\Microsoft\VisualStudio\v9.0\TeamData\Microsoft.Data.Schema.SqlTasks.targets(58,5): error MSB4018: System.NullReferenceException: Object reference not set to an instance of an object.
C:\Program Files\MSBuild\Microsoft\VisualStudio\v9.0\TeamData\Microsoft.Data.Schema.SqlTasks.targets(58,5): error MSB4018: at Microsoft.Data.Schema.Tasks.TaskHostLoader.Load(ITaskHost providedHost, TaskLoggingHelper providedLogger)
C:\Program Files\MSBuild\Microsoft\VisualStudio\v9.0\TeamData\Microsoft.Data.Schema.SqlTasks.targets(58,5): error MSB4018: at Microsoft.Data.Schema.Tasks.DBBuildTask.Execute()
C:\Program Files\MSBuild\Microsoft\VisualStudio\v9.0\TeamData\Microsoft.Data.Schema.SqlTasks.targets(58,5): error MSB4018: at Microsoft.Build.BuildEngine.TaskEngine.ExecuteInstantiatedTask(EngineProxy engineProxy, ItemBucket bucket, TaskExecutionMode howToExecuteTask, ITask task, Boolean& taskResult)
我注意到了构建日志中的以下差异,我认为这是相关的,但我不知道是什么导致了它。
好项目:
Overriding target "Build" in project "C:\Windows\Microsoft.NET\Framework\v3.5\Microsoft.Common.targets" with target "Build" from project "C:\Program Files\MSBuild\Microsoft\VisualStudio\v9.0\TeamData\Microsoft.VisualStudio.TeamSystem.Data.Tasks.targets".
失败的项目:
Overriding target "Build" in project "C:\Windows\Microsoft.NET\Framework\v3.5\Microsoft.Common.targets" with target "Build" from project "C:\Program Files\MSBuild\Microsoft\VisualStudio\v9.0\TeamData\Microsoft.Data.Schema.Common.targets".
两个DB项目都包括以下导入(仅限):
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\TeamData\Microsoft.Data.Schema.SqlTasks.targets" />
欢迎线索!