JRE静默安装指定INSTALLDIR报错:PowerShell位置参数未找到异常
解决JRE 8u201静默安装的PowerShell参数绑定异常问题
你的问题出在PowerShell中Start-Process命令的参数传递方式上——直接把安装程序的参数跟在可执行文件后面,会被PowerShell误认为是Start-Process自身的位置参数,从而触发绑定异常。试试下面这个修正后的命令:
start-process jre-8u201-windows-x64.exe -ArgumentList "/s", "/v`"/qn INSTALLDIR=E:\MYInstallation`"" -PassThru -Wait
关键修正点说明:
- 用
-ArgumentList传递外部参数:Start-Process要求外部程序的参数必须通过-ArgumentList(或简写-Args)参数来传递,而不是直接拼接在可执行文件名后,这是解决位置参数错误的核心。 - 正确转义MSI参数的引号:
/v后面的MSI静默安装参数(/qn INSTALLDIR=...)需要用双引号包裹,在PowerShell里要使用反引号`来转义内部的双引号,确保整个参数块被完整传递给JRE安装程序。 - 移除路径前的空格:
INSTALLDIR=后面不要加空格,否则安装路径会被识别为包含前导空格的路径,可能导致安装失败或路径错误。
额外注意事项:
- 建议以管理员身份运行PowerShell,避免安装过程中出现权限不足的问题。
- 确认
E:\MYInstallation目录存在(如果不存在,安装程序一般会自动创建,但提前创建能避免潜在的路径识别问题)。
内容的提问来源于stack exchange,提问作者karan
相关产品推荐
相关产品推荐

