【问题标题】:Jenkins MSbuild multiple filesJenkins MSbuild 多个文件
【发布时间】:2015-12-17 14:15:18
【问题描述】:

我想使用 Jenkins 的 MSbuild 来构建多个项目。可能吗? 也许使用分号来分隔项目,如下所示:

【问题讨论】:

    标签: jenkins jenkins-plugins


    【解决方案1】:

    那样不行。但是您可以为每个项目添加另一个 MSBuild-Step。

    如果您不想每次都重复 “命令行参数”,一种解决方案可能是检查“将构建变量作为属性传递”。然后在 'Buildenvironment' 中选择 'Inject environment variables to the build process' 并将 BUILD_ARGS="/t:rebuild ..." 之类的内容添加到 'Properties Content' 和将${BUILD_ARGS}(或%BUILD_ARGS%)添加到'命令行参数'

    如果您只想通过一个构建步骤管理一项作业,您可以使用 Windows 批处理文件 构建步骤来实现。例如:

    set BUILD_ARGS="/t:rebuild /p:VisualStudioVersion=11"
    
    msbuild projectA.sln %BUILD_ARGS%
    msbuild projectB.sln %BUILD_ARGS%
    

    在这种情况下,您通常必须首先调用call "C:\<path-to-your-visual-studio-ins>\VC\vcvars.bat" 之类的名称,具体取决于您所需的构建环境。
    此外,您可能想要处理错误。因此,您可以在每个 msbuild 行之后添加例如 IF %ERRORLEVEL% NEQ 0 GOTO :eof

    【讨论】:

    • 我不想创建许多使用 MSBuild 构建 Visual Studio 项目或解决方案部分。我想在一个部分中构建许多项目。我看到类似为 MSBuild Build File 创建一个 MSBuild xml。
    • 你的建议不错,其实我一开始就是这么用的。现在我创建了多个部分来解决问题,我找到了这个解决方案msdn.microsoft.com/library/dd576348.aspx
    • 我尝试使用 Windows 批处理文件构建步骤,但是当我这样做时它找不到 msbuild,即使我之前在管道中运行过 MSBuild 步骤也是如此。如何将 msbuild 添加到路径中,以便 jenkins 在执行 Windows 批处理文件步骤时可以找到它?
    猜你喜欢
    • 1970-01-01
    • 2017-02-24
    • 1970-01-01
    • 1970-01-01
    • 2018-09-16
    • 2016-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多