You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

使用Chocolatey在Windows Server 2016安装JRE失败,报错退出码1603

解决Windows Server 2016上Chocolatey安装JRE 8报错退出码1603的问题

我之前在维护Windows Server 2016服务器时,刚好碰到过和你一模一样的问题——用Chocolatey安装JRE 8时弹出退出码1603,安装包明明下载完了,就是卡在安装阶段。折腾了好一阵,总结出几个靠谱的解决方法,你可以挨个试试:

1. 确保用管理员权限执行安装

退出码1603最常见的原因之一就是权限不足。你得用管理员身份打开PowerShell或者命令提示符,不要用普通用户权限运行。
重新执行安装命令的时候,可以加上--verbose参数,这样能看到更详细的安装日志,方便定位具体卡在哪一步:

choco install jre8 --force --verbose

2. 清理Chocolatey缓存和残留安装文件

有时候下载的安装包可能损坏,或者之前的安装残留导致冲突:

  • 先找到Chocolatey存储JRE安装包的路径:C:\ProgramData\chocolatey\lib\jre8\tools,删掉这个目录里的所有文件;
  • 然后清理Chocolatey的全局缓存:
choco cache clean --all
  • 另外,检查控制面板里有没有残留的旧版Java,先卸载干净,重启服务器后再重新尝试安装。

3. 修复Windows Installer服务

这个错误经常和Windows Installer服务异常有关:

  • 按下Win+R输入services.msc,找到「Windows Installer」服务,先停止再启动;
  • 如果服务无法正常启动,在管理员命令提示符里执行以下命令重新注册服务:
msiexec /unregister
msiexec /regserver

4. 检查系统更新和必备组件

Windows Server 2016的旧版本组件可能和JRE安装包不兼容:

  • 确保服务器安装了最新的累积更新,很多这类安装问题都是系统补丁没打全导致的;
  • 检查是否安装了.NET Framework 4.5及以上版本,Java的安装程序依赖这个组件,如果没装的话先补上。

5. 手动运行安装包排查具体错误

既然Chocolatey已经下载好安装包了,你可以手动运行它来获取更明确的错误提示:

  • 找到C:\ProgramData\chocolatey\lib\jre8\tools里的.msi安装文件,双击运行;
  • 如果手动安装也失败,系统会弹出具体的错误信息(比如缺少Visual C++运行库、某个系统文件损坏),根据提示先解决对应的问题,再回到Chocolatey安装。

附你提供的安装日志片段:

[server-core-2016] [0;32m openstack: Progress: Downloading jre8 8.0.171... 100% [0m
[server-core-2016] [0;32m openstack: Progress: Downloading javaruntime 8.0.151... 100% [0m
[server-core-2016] [0;32m openstack: [0m
[server-core-2016] [0;32m openstack: jre8 v8.0.171 [Approved] [0m

内容的提问来源于stack exchange,提问作者sumanth dvk

火山引擎 最新活动