Chocolatey ParamPackage 是空的,即使值是在调试模式下传递的
Chocolatey ParamPackage is empty, even though the value is passed in debug mode
我正在尝试使用 Chocolatey 通过 Powershell 安装 MSI 软件包。按照所有文档和示例,我的设置如下所示:
巧克力安装。ps1
$ErrorActionPreference = 'Stop';
$fileLocation = Join-Path $toolsDir 'installer.msi'
$pp = Get-PackageParameters
Write-Output ("Keys count is : ${pp}")
if (!$pp['defaultName']) { Write-Error "Please provide a default name"; exit -1; }
...
当我运行这个命令时:
choco install .\st-installer.1.6.7.nupkg --force --params "'/defaultName:Bob'"
powershell 抛出我的错误:
错误:运行ning 命令停止,因为首选项变量 "ErrorActionPreference" 或公共参数设置为停止:请提供默认名称
但是,如果我 运行 使用 -d 开关的命令,Powershell 会显示:packageParameters: '/defaultName:',
我在这里做错了什么?我已经尝试了围绕参数、安装参数而不是参数包的所有引号变体。我不知道我还能做什么。
之前在本地测试包时,我已经 运行 了解了这一点,但我的附加参数值并未像您看到的那样被引用。我不知道 为什么 会发生这种情况,但不要引用 nupkg
的硬路径。相反,将 source 参数设置为包所在的目录(相对路径即可),然后通过包 ID 安装包,就像从 Chocolatey.org 安装一样。例如,如果包在您的当前目录中:
cinst -y st-installer --params "'/defaultName:Bob'" -s .
我不确定您使用的是哪个版本的 Chocolatey,但是如果我尝试通过指向磁盘上的 nupkg
来安装软件包,我会收到一条关于首选 -s
参数的警告和包 ID 而不是引用包文件。
我正在尝试使用 Chocolatey 通过 Powershell 安装 MSI 软件包。按照所有文档和示例,我的设置如下所示:
巧克力安装。ps1
$ErrorActionPreference = 'Stop';
$fileLocation = Join-Path $toolsDir 'installer.msi'
$pp = Get-PackageParameters
Write-Output ("Keys count is : ${pp}")
if (!$pp['defaultName']) { Write-Error "Please provide a default name"; exit -1; }
...
当我运行这个命令时:
choco install .\st-installer.1.6.7.nupkg --force --params "'/defaultName:Bob'"
powershell 抛出我的错误:
错误:运行ning 命令停止,因为首选项变量 "ErrorActionPreference" 或公共参数设置为停止:请提供默认名称
但是,如果我 运行 使用 -d 开关的命令,Powershell 会显示:packageParameters: '/defaultName:',
我在这里做错了什么?我已经尝试了围绕参数、安装参数而不是参数包的所有引号变体。我不知道我还能做什么。
之前在本地测试包时,我已经 运行 了解了这一点,但我的附加参数值并未像您看到的那样被引用。我不知道 为什么 会发生这种情况,但不要引用 nupkg
的硬路径。相反,将 source 参数设置为包所在的目录(相对路径即可),然后通过包 ID 安装包,就像从 Chocolatey.org 安装一样。例如,如果包在您的当前目录中:
cinst -y st-installer --params "'/defaultName:Bob'" -s .
我不确定您使用的是哪个版本的 Chocolatey,但是如果我尝试通过指向磁盘上的 nupkg
来安装软件包,我会收到一条关于首选 -s
参数的警告和包 ID 而不是引用包文件。