我正在尝试在构建服务器上使用 Visual Studio 2012 构建 SSIS 项目 (*.dtproj)。
据我所知,不支持直接使用 MSBuild 构建此类项目。
但是我的想法是,如果我可以在本地使用 Visual Studio 2012 IDE 构建它,我将能够直接从构建服务器上的命令行使用 Visual Studio 命令行(调用 devenv.exe/devenv.com)构建它
但是我尝试了很多组合,但我找不到任何有效的方法
我不断收到以下错误:
Microsoft (R) Microsoft Visual Studio 2012 Version 11.0.60315.1.
Copyright (C) Microsoft Corp. All rights reserved.
Error: Catastrophic failure (Exception from HRESULT: 0x8000FFFF (E_UNEXPECTED))
========== Build: 0 succeeded or up-to-date, 1 failed, 0 skipped ==========
这是我正在使用的命令行:
."C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\devenv.com" .\Datawarehouse_ETL.sln /ReBuild Development /Project .\Datawarehouse_ETL\Datawarehouse_ETL.dtproj /ProjectConfig Development /Log .\output.log /out .\output.log
我想我用来调用的参数有问题devenv.com
但根据MSDN
/Build (devenv.exe)此开关执行与集成开发环境 (IDE) 中的 Build Solution 菜单命令相同的功能。将包含空格的字符串用双引号引起来。构建的摘要信息(包括错误)可以显示在命令窗口中,或使用 /out 开关指定的任何日志文件中。此命令仅构建自上次构建以来已更改的项目。要在解决方案中构建所有项目,请使用 /Rebuild (devenv.exe)。
我找到了几个有这个问题的论坛,但是那里提出的解决方法都没有对我有用。
顺便说一句,根据这篇文章,devenv.com
它只是devenv.exe
用作命令行的包装器
我即将放弃,只是手动/本地构建解决方案并签入*.ispac
构建后生成的文件,然后编写一个 PowerShell 脚本来部署它 =(((((