7

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

error MSB4019: The imported project "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.

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

4

1 回答 1

12

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

/p:VisualStudioVersion=11.0 /t:Rebuild;Publish 

这告诉 msbuild 使用 VS2012 目标。

需要通过VisualStudioVersion,因此 VS2010 和 Vs2012 可以共享同一个项目文件:即项目文件本身不存储目标 VS 版本

于 2013-08-19T13:12:49.880 回答