我有一个包含这在顶部有一个PowerShell脚本:VSTS发布错误:参数无法找到匹配的参数名称“服务器”
Param(
# [snip]
[string] [Parameter(Mandatory=$true)] $Server
)
在我VSTS版本的定义,我添加了一个Azure的PowerShell的任务调用脚本,传入的参数为:
-Server '$(ServerName)' [snip]
然而,当我触发一个新的版本,在这个脚本的一步,我得到这个错误:
##[error]A parameter cannot be found that matches parameter name 'Server'.
我在日志输出中验证了服务器名称已正确传递。我甚至复制/粘贴记录的命令,并修复路径后,它在本地运行没有问题。
为什么会发生这种情况,我该如何解决?
它_sounds_就像你的脚本/函数加载的早期定义。 – Matt
@Matt你能详细说明一下吗?如果是这样的话,不应该意味着[改变参数名称](// stackoverflow.com/a/39730146/2747593)不会影响任何东西吗? –
是的,我知道。它的一系列时间错误我暗示我无法复制,因为我没有环境。这就像你制作的脚本v1,它没有那个名字,然后你“发布”它。接下来,您更新脚本以使其更好,但忽略“发布”它。然后,测试会失败,因为您会认为某个版本不存在。然后,最后,再次测试脚本的v3并“测试”顺利进行“发布”。这将会改变名称的固定形式。建议相关不等于因果关系。 – Matt