我正在为 Salesforce 构建自动化,作为要求,我需要安装“Salesforce CLI”并执行一些命令。我通过了巧克力命令,但它似乎没有工作,有没有其他方法可以解决这个问题?
3 回答
安装节点 JS
curl -sL https://rpm.nodesource.com/setup_11.x | bash -
yum -y 安装 nodejs
npm install -g npm
安装最新的 sfdx cli
npm install --global sfdx-cli
安装特定版本的 sfdx cli
npm install --global sfdx-cli@[版本]
卸载
npm 卸载 --global sfdx-cli
尝试通过 Chocolatey 下载Node.js:
cinst nodejs.install
然后使用npm(与Node.js一起安装)下载Salesforce-CLI:
npm install --global sfdx-cli
您可以使用普通的 SFDX CLI 安装程序:https ://developer.salesforce.com/docs/atlas.en-us.sfdx_setup.meta/sfdx_setup/sfdx_setup_install_cli.htm
如果您使用 Chocolatey 并choco install sfdx-cli
抛出一些错误 - 通常如何处理错误的信息就在消息中。
错误 - 哈希不匹配。实际值为“947036CB8228616B0C9A94B9F11FD43225188C1839A7475930288CA650B78361”。错误:“C:\Users[redacted]\AppData\Local\Temp\chocolatey\sfdx-cli\6.0.16\sfdx-windows-amd64.exe”的校验和不符合“9C33344AED91F6CC2CF97A64A69D99CBAD9EBBF4A28920B8160CDFCE837725326”的校验和类型。验证校验和是否合适后,请考虑使用 --checksum --checksum64 传递实际校验和。一个不太安全的选项是在必要时通过 --ignore-checksums。sfdx-cli 的安装不成功。
choco install sfdx-cli --ignore-checksums
应该可以正常工作。
您可能会遇到的下一个错误是关于安装脚本中的拼写错误(choco 包的作者没有正确转义空格,并且它在“C:\Program Files”上死掉,至少在我的机器上):
'C:\Program' 不是内部或外部命令、可运行程序或批处理文件。错误:运行 ["cmd" /C "C:\Program Files\sfdx\bin\sfdx.exe" update] 不成功。退出代码为“1”。查看日志以了解可能的错误
我们可以看看安装脚本中的内容,失败的安装通常被复制到“lib-bad”:C:\ProgramData\chocolatey\lib-bad\sfdx-cli\tools
我不是 PowerShell 专家,但从外观上看,它只是尝试sfdx update
在安装结束时运行。我可以跳过脚本并手动运行它。
choco install sfdx-cli --ignore-checksums -n
工作正常,然后关闭控制台(重新加载 PATH 变量)。打开新的控制台,
sfdx update
也可以工作。
sfdx-cli:更新 CLI... 已经在最新版本上:7.54.4-8ff9ba9cc5