VS Code Java 中的 JavaC 支持发布!

2025 年 1 月 9 日
 winffee

作者:Nick Zhu

大家新年好!我们很高兴宣布,Visual Studio Code Java 、JDT 和 JDT-LS 现已部分支持使用 Javac 作为底层编译器。这项支持是红帽和微软经过近一年合作的成果。

此更改旨在确保对最新 Java 特性的及时支持,并使 VS Code 上的 Java 语言支持与常见构建工具(如 Maven 、Gradle )更加一致。许多用户希望获得更无缝的开箱即用开发体验,我们相信引入 Javac 是实现这一目标的重要第一步。

用户可以从基于 Javac 的工具中获得以下好处:

请注意,基于 Javac 的 JDT 是 ECJ 编译器的另一选项,并非要完全替代 ECJ 。目前,VS Code Java 中的基于 Javac 的支持默认处于关闭状态,可以通过以下方式启用:

  1. 安装最新的预发布版本的 “Language Support for Java by Red Hat” 或 “Extension Pack for Java”。
  2. 在 VS Code 设置中将 "java.jdt.ls.javac.enabled" 设置为 "on"。以下是截图:
  3. 将 "java.jdt.ls.java.home" 指向您的 Java 23 安装目录。
  4. 重启 VS Code 。

目前,基于 Javac 的 VS Code Java 支持在以下方面表现良好:编辑辅助、诊断、快速修复/重构、悬停提示、导航、索引、构建和类文件生成。未来,我们计划实现以下目标:

此计划已在于德国美因茨举办的 OpenCommunity-X 大会上公布。虽然 Javac 支持的开发目前在 JDT-core 分支中进行,但所有工作都会回馈到上游 JDT 。随着功能逐步完善,上游集成工作已启动并将持续进行。

Javac 对 VS Code Java 的支持是我们为更快速支持新 Java 版本、最小化编译器差异而努力的重要一步。我们希望您能尝试这一预览支持并向我们反馈您的意见!

安装 Java 插件包

要使用上述所有功能,请在 Visual Studio Code 上下载并安装Extension Pack for Java 。

如果您是一位 Spring 开发者,并且正在编写 Spring Boot 相关的程序,您也可以下载并安装Spring Boot 插件包,获得与 Spring Boot 有关的专属开发体验

反馈与建议 Copy link

2024 年,Visual Studio Code 上的 Java 会有很多激动人心的更新,一如既往,您的反馈和建议对我们非常重要,将有助于我们未来的产品塑造。有几种方法可以给我们留下反馈

资源

以下链接和资源能帮助您更好地了解 Java on Visual Studio Code 的相关信息

4302 次点击
所在节点    Visual Studio Code
8 条回复
Bmmmmmmmmmmmmmmm
2025 年 1 月 9 日
老哥一直坚持不懈的运营 vsc ,真是佩服佩服
hxtheone
2025 年 1 月 9 日
JB 系的 IDE 实在用不习惯, 所以也短暂地拿 VSC 写过一段时间 Java, 起码基础的代码编写是没问题的, 希望能在 AI 的加持下做的越来越好
querysecret
2025 年 1 月 9 日
@hxtheone 我最近第 N 次尝试使用 VS 写公司这种 SpringBoot+Mybatis 的项目,后台不知道在转什么任务,转 50%就会卡住,提示也没有,修改代码还卡,唉,比 JB 还是差很多
Configuration
2025 年 1 月 9 日
@baozhibo 如果 M$ 给你发工资,你也一定会坚持的
hxtheone
2025 年 1 月 9 日
@querysecret 感觉还是 jdtls 太拉了, 写着写着卡死我也遇到过都是强制 reload 解决, 不过我们公司模块分得细项目非常小, 遇到的频率不高
layxy
2025 年 1 月 9 日
争取干死 jetbrain,现在 jetbrain 一点都不争气,各家 ai 编码插件要么不支持 idea,要么支持的稀烂,自身 ide 的稳定性也不太行,现在用着 idea 写代码,用 vscode 生成代码
Kaiv2
2025 年 1 月 10 日
牛的,试试看
Kaiv2
2025 年 1 月 10 日
有没有什么办法检查是否生效了 javac, 感觉启用了没什么效果

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.ih06.com/t/1103741

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX