我有Windows Server 2012 R2,我想用它在CI管道中从SSDT构建sampleSpace
项目。这就是我到目前为止所做的:
.sqlproj
当我用
构建我的解决方案时 Microsoft.Data.Tools.Msbuild
我收到错误C:\Windows\Microsoft.NET\Framework64\v4.0.30319\msbuild.exe database.solution.sln /p:tv=14 /p:SSDTPath=D:\Nuget\Microsoft.Data.Tools.Msbuild\lib\net40 /p:SQLDBExtensionsRefPath=D:\Nuget\Microsoft.Data.Tools.Msbuild\lib\net40 /p:Configuration=Debug
我错过了什么想法?目标是使构建服务器尽可能轻,因此不要在其上安装Visual Studio或SSDT。
这是MsBuild的完整输出:
Could not load file or assembly 'Microsoft.Build.Utilities.Core
答案 0 :(得分:3)
SSDT NuGet包期望MSBuild版本14.0 Update 3或更新版本(即15.0 RC)。这可以在这里找到:https://www.microsoft.com/en-us/download/details.aspx?id=48159
您还需要设置一些环境变量来引用NuGet包位置,如下所示:
setx SQLDBExtensionsRefPath C:\agent\Microsoft.Data.Tools.Msbuild\lib\net40 /M
setx SSDTPath C:\agent\Microsoft.Data.Tools.Msbuild\lib\net40 /M