我已经编写了一个 PSake (v2.0) 构建脚本,并且该脚本将 $psake.build_success 属性设置为 true 甚至认为对 MSBuild 的调用失败。谁能告诉我如何更改脚本,以便 $psake.build_success 属性在 MSBuild 调用失败时正确返回 false

我的 PSake 构建脚本如下:

properties {
    $solutionFile = 'SOLUTION_FILE'
    $buildSuccessfulMessage = 'Solution Successfully Built!'
    $buildFailureMessage = 'Solution Failed to Build!'
    $cleanMessage = 'Executed Clean!'
}

task default -depends BuildSolution

task BuildSolution
{
    msbuild $solutionFile /t:Clean,Build
    if ($psake.build_success)
    {
        $buildSuccessfulMessage
    }
    else
    {
        $buildFailureMessage
    }
}

最佳答案

PowerShell 的 native $lastExitCode(即 WIn32 ExitCode)在上下文中是否有用?我猜想内置的只有在您调用与 psake 相关的 cmdlet 时才相关。

即,将支票替换为

if($lastexitcode -eq 0) {

免责声明:只有播客级别的 psake 经验:D

关于powershell - 确定解决方案是否使用 MSBuild 和 PSake 编译,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1825941/

10-11 16:54