VS2015 devenv 构建运行 asnc?
VS2015 devenv build runs asnc?
正在尝试创建 Jenkins 管道 运行 devenv 以构建 SSIS 项目。似乎 devenv returns 在后台构建 运行s 时立即出现。我以前用 VS2010 做过这个,据我所知,在构建完成之前,devenv 没有 return 到控制台。
我正在 运行宁:devenv mysolution.sln /build "debug|Any Cpu"。命令提示符立即 returns。项目的 bin 或 obj 文件夹中没有构建输出。如果我只是观察文件夹,构建输出最终(几秒钟)就会显示出来。
有什么方法可以确保 devenv 在所有工作完成之前不会 return?我已经尝试了命令行帮助中似乎相关的所有选项。在 Google 上不多,或者 SO 似乎相关。
有什么想法吗?
选项 1:msbuild
可能,到目前为止,最简单的方法是使用 msbuild
。 SSIS 的支持如
中所述
msbuild /t:Build /p:Configuration=Debug your_solution.sln
然而,这不是您的选择,因此
选项 2:生成进程并等待 devenv
完成
在 Powershell 中执行此操作的一个选项是 Get-Process
,如
中所述
要捕获输出,您可能会选择 /out
or/and /log
,如下所示:
devenv.exe your_solution.sln /build "debug|any cpu" /out "c:\buildlog.txt"
Upd 这部分文档似乎解释了不同 devenv 风格之间的区别:
Commands that begin with devenv are handled by the devenv.com utility, which delivers output through standard system streams, such as stdout and stderr. The utility determines the appropriate I/O redirection when it captures output, for example to a .txt file.
Alternatively, commands that begin with devenv.exe can use the same switches, but the devenv.com utility is bypassed. Using devenv.exe directly prevents output from appearing on the console.
正在尝试创建 Jenkins 管道 运行 devenv 以构建 SSIS 项目。似乎 devenv returns 在后台构建 运行s 时立即出现。我以前用 VS2010 做过这个,据我所知,在构建完成之前,devenv 没有 return 到控制台。
我正在 运行宁:devenv mysolution.sln /build "debug|Any Cpu"。命令提示符立即 returns。项目的 bin 或 obj 文件夹中没有构建输出。如果我只是观察文件夹,构建输出最终(几秒钟)就会显示出来。
有什么方法可以确保 devenv 在所有工作完成之前不会 return?我已经尝试了命令行帮助中似乎相关的所有选项。在 Google 上不多,或者 SO 似乎相关。
有什么想法吗?
选项 1:msbuild
可能,到目前为止,最简单的方法是使用 msbuild
。 SSIS 的支持如
msbuild /t:Build /p:Configuration=Debug your_solution.sln
然而,这不是您的选择,因此
选项 2:生成进程并等待 devenv
完成
在 Powershell 中执行此操作的一个选项是 Get-Process
,如
要捕获输出,您可能会选择 /out
or/and /log
,如下所示:
devenv.exe your_solution.sln /build "debug|any cpu" /out "c:\buildlog.txt"
Upd 这部分文档似乎解释了不同 devenv 风格之间的区别:
Commands that begin with devenv are handled by the devenv.com utility, which delivers output through standard system streams, such as stdout and stderr. The utility determines the appropriate I/O redirection when it captures output, for example to a .txt file.
Alternatively, commands that begin with devenv.exe can use the same switches, but the devenv.com utility is bypassed. Using devenv.exe directly prevents output from appearing on the console.