我尝试运行 build.ps1 -SettingsProfile "Customer",但它输出了以下内容
More than one build script specified.
在我的Cake脚本中,我通过以下方式获取:
Argument("SettingsProfile", "Default")
如果我跳过build.ps1的参数,那么它就会运行,但显然会变成“默认值”。
我假设您正在使用默认的启动程序。
如果是这样,您可以使用-ScriptArgs
参数来传递自定义的Cake参数。
Cake参数不像标准的PowerShell参数(-Key value
)那样进行格式化,而是采用--Key="value"
的形式。
因此,您的情况应该如下所示:
.\build.ps1 -ScriptArgs '--SettingsProfile="Customer"'
您的Cake脚本参数使用看起来很好,因此上述修改应该解决您的问题。
您的Cake脚本参数使用看起来很好,因此上述修改应该解决您的问题。
根据您想要达到的程度,您还可以选择将引导程序扩展为接受您的输入参数作为PowerShell参数。这里有一个教程,介绍了如何扩展引导程序:
http://cakebuild.net/docs/tutorials/extending-the-bootstrapper
powershell -File build.ps1 -ScriptArgs '--deploymentPackagePath=\\server\folder1','--releasePackagePath=\\server\folder2'
- debgz.\build.ps1 -ScriptArgs '--dir="../CompulsoryCow.Meta/CompulsoryCow.Meta"', '--proj="CompulsoryCow.Meta"', '--version="3.0.2"' -Target Package
会导致错误:“参数值不是有效的布尔值”。而在没有第三个参数时,命令.\build.ps1 -ScriptArgs '--dir="../CompulsoryCow.Meta/CompulsoryCow.Meta"', '--proj="CompulsoryCow.Meta"' -Target Package
却可以正常工作。 - LosManos