简单的Psake构建失败,出现“共享任务”异常

时间:2019-10-15 18:56:07

标签: psake

我有以下简单的psakefile.ps1

Task Build {
    Write-Host "Build"
}

当我使用build.ps1调用它时:

nuget install psake -version 4.9.0
Import-Module .\psake.4.9.0\tools\psake\psake.psm1 -Force
Invoke-psake psakefile.ps1

我得到一个异常,指出需要执行“默认”任务。我假设这意味着我可以在命令行上指定“ Build”,或提供一个名为“ default”的任务,所以我的psakefile.ps1变为:

Task Build {
    Write-Host "Build"
}

Task default -Depends Build {
    # Nothing to do, only here as a placeholder
}

但是现在我得到一个非常奇怪的异常:

  

异常:断言:   '{0}引用了模块{1}的共享任务,无法执行操作。

如果我在“默认”任务中放置了任何实际的代码,我会得到一个例外,说我需要再次执行默认任务。

1 个答案:

答案 0 :(得分:0)

是的,当然我已经解决了这个问题,并且由于我无法在互联网上找到实际的异常消息,所以我想我会在这里回答一个问题,以便在某个地方找到答案(也许我将来的自我会结束这一天的阅读。)

问题很简单,当定义默认任务时,您不能放置ScriptBlock。相反,只需将其定义为:

Task default -Depends Build