讲师中心 微信公众号

工具推荐

视频效率加速
剧云
剧云

中文短剧剧本制作平台

Laper
Laper

剧本策划到成片协作

Seko
Seko

AI短剧一键生成成片

updream

一键生成高质量推广成片

在Windows中通过Chocolatey安装Java_自动化包管理器的应用

夜伟小哥_7274

夜伟小哥_7274

发布时间:2026-02-20 11:56:03

|

1030人浏览过

|

来源于php中文网

原创

choco install java安装的是Eclipse Temurin JRE 17元包,不含javac等开发工具;需编译代码应改用choco install temurin17jdk,并手动配置JAVA_HOME指向JDK实际路径。

在windows中通过chocolatey安装java_自动化包管理器的应用

choco install java 这个命令到底装的是什么

直接执行 choco install java 并不会装 JDK,而是装一个叫 java 的“元包”(meta-package),它默认指向 temurin17jre —— 也就是 Eclipse Temurin 的 JRE 17,不带 javac、jar 等开发工具。如果你需要编译 Java 代码,这个包完全不够用。

常见错误现象:javac 命令报错“不是内部或外部命令”,但 java -version 能正常输出。

  • 想写代码、跑 Maven/Gradle 构建 → 必须装 JDK,推荐 choco install temurin17jdk
  • 只想运行 jar 包 → choco install temurin17jre 更轻量
  • 要指定版本(比如 JDK 11 或 21)→ 查清包名:choco search jdk,注意区分 temurin、zulu、amazoncorretto 等不同发行版

安装后 JAVA\_HOME 没自动配置怎么办

Chocolatey 不会自动设置系统级 JAVA_HOME 环境变量,哪怕你装了 temurin17jdk,IDE 或构建工具仍可能找不到 JDK。

原因:Choco 把 JDK 解压到类似 C:\ProgramData\chocolatey\lib\temurin17jdk\tools\jdk-17.0.1+12 这样的路径,而该路径里嵌套了一层 jdk-17.0.1+12 目录,JAVA_HOME 必须指向最内层的 JDK 根目录(含 bin、lib)。

立即学习“Java免费学习笔记(深入)”;

JavaScript 开发专家
JavaScript 开发专家

掌握包含 ES6+、异步模式和 Node.js API 的现代 JavaScript。处理 Promise、事件循环和浏览器/Node 兼容性。在 JavaSc

下载
  • 手动查路径:运行 choco list --local-only 找包名,再进 C:\ProgramData\chocolatey\lib\<pkg>\tools\</pkg> 看实际解压目录
  • 设置 JAVA_HOME:右键“此电脑”→属性→高级系统设置→环境变量→新建系统变量,值填完整 JDK 路径(不含末尾反斜杠)
  • 验证是否生效:重启终端后运行 echo %JAVA_HOME% 和 %JAVA_HOME%\bin\java -version

多个 JDK 共存时如何快速切换

Chocolatey 本身不提供 update-alternatives 那样的 JDK 切换机制,但你可以用符号链接 + 手动更新的方式模拟。

典型场景:项目 A 要求 JDK 11,项目 B 要求 JDK 17,又不想反复改 JAVA_HOME。

  • 先统一安装多个 JDK:choco install temurin11jdk temurin17jdk temurin21jdk
  • 在固定位置(如 C:\dev\jdk)创建空文件夹,用 mklink /D 指向当前要用的 JDK 实际路径
  • 把 JAVA_HOME 设为 C:\dev\jdk,切换只需删旧链接、建新链接
  • 注意:PowerShell 默认禁用符号链接,需以管理员身份运行 cmd 执行 mklink;普通用户可用 junction 工具替代

choco upgrade all 后 Java 命令突然失效

这是 Chocolatey 的“静默升级陷阱”:当你运行 choco upgrade all,temurin17jdk 可能被升到 17.0.2+8,但旧的 JAVA_HOME 仍指向 17.0.1+12 目录,导致 java 命令找不到可执行文件。

根本原因:Temurin 的 Choco 包每次升级都会解压到新子目录,不会覆盖原路径。

  • 升级后第一件事:检查 C:\ProgramData\chocolatey\lib\temurin17jdk\tools\ 下最新日期的 JDK 文件夹
  • 对比当前 JAVA_HOME 是否还有效,无效就更新它
  • 更稳妥的做法:用上面提到的符号链接方式管理 JAVA_HOME,升级后只需重链一次
  • 如果依赖 CI/CD 脚本,建议在脚本里加校验逻辑:if not exist "%JAVA_HOME%\bin\java.exe" echo JAVA_HOME is broken

真正麻烦的不是装不上,而是装上了却没意识到路径已经漂移 —— 尤其当 java -version 显示正常,但 mvn compile 报编码错误时,大概率是 JDK 版本或 JAVA_HOME 指向了 JRE 而非 JDK。

热门AI工具

更多
火山引擎

火山引擎是一款面向企业的云计算与AI服务平台。

超级麦吉

一款通过数字员工协作完成调研、数据分析与文档制作的AI办公平台。

UP简历
UP简历 Hot

一款AI办公效率工具,主要用于基于AI技术的免费在线简历制作工具,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

花生AI
花生AI Hot

一款AI视频创作工具,主要用于B站推出的AI视频创作工具,适合需要提升相关任务效率的用户。

音述AI
音述AI Hot

一款AI音频处理工具,主要用于音述AI是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区,适合需要提升相关任务效率的用户。

咔片AIPPT

一款在线AI演示文稿制作工具,可根据主题和内容需求辅助生成PPT结构与页面,提高演示材料制作效率。

相关专题

更多
eclipse教程
eclipse教程

php中文网为大家带来eclipse教程合集,eclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。php中文网还为大家带来eclipse的相关下载资源、相关课程以及相关文章等内容,供大家免费下载使用。

750

2023.06.14

eclipse怎么设置中文
eclipse怎么设置中文

eclipse设置中文的方法:除了设置界面为中文外,你还可以为Eclipse添加中文插件,以便更好地支持中文编程。例如,你可以安装EBNF插件来支持中文变量名,或安装Chinese Helper来提供中文帮助文档。本专题为大家提供eclipse设置中文相关的各种文章、以及下载和课程。

6326

2023.07.24

c语言编程软件有哪些
c语言编程软件有哪些

c语言编程软件有GCC、Clang、Microsoft Visual Studio、Eclipse、NetBeans、Dev-C++、Code::Blocks、KDevelop、Sublime Text和Atom。更多关于c语言编程软件的问题详情请看本专题的文章。php中文网欢迎大家前来学习。

9899

2023.11.02

Eclipse版本号有哪些区别
Eclipse版本号有哪些区别

区别:1、Eclipse 3.x系列:Eclipse的早期版本,包括3.0、3.1、3.2等;2、Eclipse 4.x系列:Eclipse的最新版本,包括4.0、4.1、4.2等;3、Eclipse IDE for Java Developers等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2804

2024.02.23

eclipse和idea有什么区别
eclipse和idea有什么区别

eclipse和idea的区别:1、平台支持;2、内存占用;3、插件系统;4、智能代码提示;5、界面设计;6、调试功能;7、学习曲线。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

662

2024.02.23

eclipse设置中文全教程
eclipse设置中文全教程

本专题整合了eclipse设置中文相关教程,阅读专题下面的文章了解更多详细操作。

4106

2025.10.10

eclipse字体放大教程
eclipse字体放大教程

本专题整合了eclipse字体放大教程,阅读专题下面的文章了解更多详细内容。

4125

2025.10.10

eclipse左边栏不见了解决方法
eclipse左边栏不见了解决方法

本专题整合了eclipse左边栏相关教程,阅读专题下面的文章了解更多详细内容。

568

2025.10.15

Go-Zero API开发使用教程
Go-Zero API开发使用教程

本专题聚焦Go-Zero的API开发,拆解.api描述文件的语法结构、路由与分组定义、参数绑定与校验规则,说明统一响应体、JWT鉴权、跨域与接口文档生成的落地方式,并给出网关聚合与接口测试的实践建议。

20

2026.11.12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
dev.java 官方:Learn Java
dev.java 官方:Learn Java

共0课时 | 0人学习

Java JDBC数据库连接官方教程
Java JDBC数据库连接官方教程

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn