Koh*_*anz 5 windows msbuild jenkins
我正在尝试构建一个VS .sln,其中包含多个C++ .vcproj.解决方案文件是使用CMake生成的,我已经将这部分工作在Jenkins中(使用CMake builder插件).要构建解决方案文件,我使用的是msbuild.我可以使用Visual Studio和命令行使用以下命令构建解决方案:
C:\Jenkins\workspace\SonioTest>"C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe" /t:Rebuild bin/SonIO.sln
Run Code Online (Sandbox Code Playgroud)
这成功构建(在Jenkins所在的同一台机器上).
但是,我试图在Jenkins中自动化这部分构建,并且构建最终失败并出现一些C1083
错误("Cannot open source file: '..\path\to\file.ext': No such file or directory
).我已经尝试使用Jenkins msbuild插件并使用在终端中工作的完全相同的命令作为"执行Windows批处理命令"构建步骤,结果相同.
使用Windows批处理命令构建步骤时,我可以在日志中看到正在执行的命令:
C:\Jenkins\workspace\SonioTest>"C:\Windows\Microsoft.NET\Framework\v4.0.30319 msbuild.exe" /t:Rebuild bin/SonIO.sln
Run Code Online (Sandbox Code Playgroud)
...与从命令行工作的那个完全相同,包括工作目录.
我正在运行Jenkins作为服务,我将服务登录作为我的帐户(具有管理员权限).任何人都知道Jenkins将执行批处理命令的目录是什么?
任何想法为什么我看到Jenkins和命令行之间的这种行为差异?
如果不太了解 VS 构建,它看起来主要是一个环境设置。
我的第一个建议是确保在 Jenkins 中将目录更改为运行良好命令的同一目录,然后尝试它。
另外,可能想首先尝试将 Jenkins 作为独立应用程序运行。
作为一项服务,也许允许服务“与桌面交互”。
归档时间: |
|
查看次数: |
5147 次 |
最近记录: |