数据库msbuild发布无法从命令行运行

数据库msbuild发布无法从命令行运行,msbuild,sqlproj,Msbuild,Sqlproj,我正在尝试使用以下命令从命令行使用MSBuild发布.sqlproj: msbuild/t:Publish[MySqlProjPath]但我得到以下错误: 错误MSB4019:找不到导入的项目“C:\Program Files(x86)\MSBuild\Microsoft\VisualStudio\v10.0\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets”。确认声明中的路径正确,并且文件存在于磁盘上。 我觉得奇怪的是,在VisualStudi

我正在尝试使用以下命令从命令行使用MSBuild发布.sqlproj:
msbuild/t:Publish[MySqlProjPath]
但我得到以下错误:

错误MSB4019:找不到导入的项目“C:\Program Files(x86)\MSBuild\Microsoft\VisualStudio\v10.0\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets”。确认声明中的路径正确,并且文件存在于磁盘上。


我觉得奇怪的是,在VisualStudio2012中,我可以成功发布同一个项目。Visual Studio在发布之前是否设置了任何神奇的msbuild属性以从其他目录获取.targets文件?

您应该将以下参数传递给msbuild:

/p:VisualStudioVersion=11.0 /t:Rebuild;Publish 
这告诉msbuild使用VS2012目标


传递
VisualStudioVersion
是必需的,因此VS2010和Vs2012可以共享同一个项目文件:即项目文件本身不存储目标VS版本

这太棒了,工作起来很有魅力我的一些解决方案需要2013组件,这是固定的/p:VisualStudioVersion=11.0