Visual Studio Code 中的 Java

Visual Studio Code 中支持 Java 通过多种扩展实现。结合核心VS Code的强大功能,这些扩展为您提供一个轻量级且性能优异的代码编辑器,同时支持许多常见的Java开发技术。

本文将概述Visual Studio Code为Java开发者提供的不同功能。如需快速浏览如何使用Visual Studio Code编辑、运行和调试Java程序,请使用下方的Java入门教程按钮。

Java 入门教程

概述

VS Code 提供关键的语言功能,如代码补全、重构、线条、格式化和代码片段,同时还能方便地进行调试和单元测试支持。VS Code 还集成了 Maven、Tomcat、Jetty 和 Spring Boot 等工具和框架。借助Visual Studio Code的强大功能,Java开发者不仅能快速编辑代码,也能完成完整的调试和测试周期。如果你在寻找一个满足以下条件的工具,它是你 Java 工作的绝佳选择:

  • 快速、轻量、免费且开源。
  • 支持许多其他语言,不仅仅是Java。
  • 帮助你开始Java之旅,无需安装和学习复杂的IDE。
  • 提供出色的微服务支持,包括流行的框架、容器工具和云集成。
  • 提供基于团队的协作功能,如Visual Studio Live Share
  • 通过IntelliSense和其他代码感知编辑功能提升你的生产力。

安装Visual Studio Code for Java

为了帮助你快速设置,我们建议你使用Coding Pack for Java,这是VS Code、Java Development Kit(JDK)以及Microsoft推荐的一系列扩展的捆绑包。Coding Pack还可以用来修复现有的开发环境。

安装 Java 编程包 - Windows

安装 Java 编程包 - macOS

注意:Java 编码包仅支持 Windows 和 macOS。对于其他作系统,你需要手动安装 JDK、VS Code 和 Java 扩展。

如果你已经安装了 VS Code,并想为其添加 Java 支持,我们推荐使用 Microsoft 推荐的 Java 扩展包(Extension Pack for Java):

  1. Red Hat 对 Java™ 的语言支持
  2. Java 调试器
  3. Java 测试运行器
  4. Maven for Java
  5. Java 项目经理
  6. Visual Studio IntelliCode

安装 Java 扩展包

或者,你也可以通过自己安装流行的Java扩展,为VS Code添加Java语言支持。

下载VS Code——如果你还没下载VS Code,赶紧为你的平台(Windows、macOS、Linux)安装。

还有其他流行的 Java 扩展,你可以根据自己的需求选择,包括:

  1. Spring Boot延长包
  2. Gradle for Java
  3. 社区服务器连接器(适用于Apache Felix、Karaf、Tomcat、Jetty等)
  4. 服务器连接器(Red Hat Servers,例如 Wildfly)
  5. MicroProfile 扩展包
  6. CheckStyle
  7. 声纳林特

多亏了VS Code周围优秀的Java社区,这个列表还没完。你可以在VS Code里轻松搜索更多Java扩展:

  1. 进入扩展视图(⇧⌘X(Windows,Linux Ctrl+Shift+X)。
  2. 通过输入“java”来筛选扩展列表。

本文档介绍了这些 Java 扩展中包含的一些关键功能。

注意:为了帮助你入门 Java 开发,你可以使用 Java General 配置文件模板安装有用的扩展。你可以在 VS Code 中的配置文件中了解更多关于配置文件及其如何帮助你快速重新配置编辑器以适应不同编程语言和工作流程的信息。

入门

注意:如果你在Windows上使用VS Code并想利用Linux的Windows子系统,请参见“在WSL中开发”。

安装 Java 开发工具包(JDK)

Java 开发套件(JDK)是一种用于开发 Java 应用程序的软件开发环境。为了在 Visual Studio Code 中运行 Java,你需要安装一个 JDK。Java 扩展包支持 Java 1.8 或更高版本。

我们建议您考虑从以下渠道安装JDK:

注意:如果您安装了多个 JDK,需要为项目使用特定的 JDK 版本,请参阅“项目运行时配置”。要启用 Java 预览功能,请参见“我如何与新 Java 版本一起使用 VS Code”。

对于刚接触Java或VS Code的新开发者,我们在扩展中提供了一些提示。安装Java扩展包后,你可以通过VS Code命令面板中的Java: Tips for Beginners命令查看提示。

打开命令面板(⇧⌘P(Windows,Linux Ctrl+Shift+P),输入“java tips”以选择该命令。

Java 入门

使用 Java 源文件

你可以使用 VS Code 读取、写入、运行和调试 Java 源文件,而无需创建项目。VS Code for Java 支持两种模式,轻量级和标准级。轻量级模式非常适合仅处理源文件的场景。如果你想处理全规模项目,则需要标准模式。必要时,你可以轻松地从轻量级模式切换到标准模式。欲了解更多信息,请参见轻量级模式。

参与 Java 项目

在VS Code中使用Java时,有三点你必须明白:

  1. VS Code 是如何处理工作区的?
  2. VS Code 是如何处理 Java 的?
  3. VS Code 如何处理包含 Java 的工作区?

VS Code 工作区

在 Visual Studio Code 中,“工作区”指的是一组由一个或多个文件系统文件夹(及其子文件夹)组成的集合,以及当该“工作区”在 VS Code 中打开时生效的所有 VS Code 配置。VS Code 中有两种“工作区”,分别是“文件夹工作区”和“多根工作区”。

当你在VS Code中打开文件系统文件夹(目录)时,VS Code会显示一个“文件夹工作区”。

“多根工作区”可以指文件系统不同部分的多个文件夹(目录),VS Code 在文件资源管理器中将工作区文件夹的内容一起显示。欲了解更多信息,请参见多根工作区

VS Code 中的 Java 项目

与 IntelliJ IDEA、NetBeans 或 Eclipse 等集成开发环境不同,“Java 项目”的概念完全由扩展提供,并非基础 VS Code 的核心概念。在VS Code中处理“Java项目”时,必须安装必要的扩展以处理这些项目文件。

例如,Maven、Eclipse 和 Gradle Java 项目通过 Red Hat 的 Language Support™ for Java 得到支持 ,利用提供 Maven 支持的 M2Eclipse 和通过 Eclipse JDT 语言服务器支持 Gradle 的 Buildship

使用 Maven for Java,你可以从 Maven Archetypes 生成项目,浏览工作区内的所有 Maven 项目,并从嵌入式资源管理器轻松执行 Maven 目标。项目也可以通过 Java 项目管理器扩展创建和管理。

Visual Studio Code 还支持在 Java 项目之外处理独立的 Java 文件,详见《入门 Java 教程》。

包含 Java 项目的 VS Code 工作区

假设已安装必要的 Java 扩展,打开包含 Java 工件的 VS Code 工作区会使这些扩展理解这些工件并提供处理选项。

关于 Java 项目支持的更多细节,可以在 Visual Studio Code 和 Java 构建工具中的 Java 项目管理中找到。

剪辑

代码导航

Visual Studio Code 中的 Java 还支持源代码导航功能,如符号搜索、窥视定义和返回定义。Spring Boot Tools 扩展为 Spring Boot 项目提供了增强的导航和代码完成支持。

VS Code的一个主要优势是速度。当你打开 Java 源文件或文件夹时,借助轻量级模式,几秒钟内你就能用大纲视图导航代码库,并使用“前往定义”和“引用”等命令。这在你第一次打开项目时尤其有用。

代码补全

IntelliSense 是一个通用术语,涵盖语言特性,包括智能代码补全(上下文中方法和变量建议),适用于所有文件以及内置和第三方模块。VS Code 支持代码补全,并通过 Red Hat 的 Java 语言支持™ Java,支持 IntelliSense for Java。它还提供了名为IntelliCode的AI辅助IntelliSense,将你最可能使用的项目放在完成列表顶部。

用AI提升完成

GitHub Copilot 是一款由人工智能驱动的代码完成工具,帮助你更快更智能地写代码。你可以在 VS Code 中使用 GitHub Copilot 扩展生成代码,或者从它生成的代码中学习。

VS Code 市场中的 GitHub Copilot 扩展

GitHub Copilot 为多种语言和各种框架提供了建议,尤其适用于 Python、JavaScript、TypeScript、Ruby、Go、C# 和 C++。

你可以在Copilot文档中了解更多如何开始使用Copilot的方法。

代码片段

Visual Studio Code 支持多种流行的 Java 代码片段,以提高生产力,如 class/interface、syserr、sysout、if/else、try/catch、static main 方法。利用 Java 语言服务器的信息,它还在选择时预览代码片段。

例如,输入“sout”或“sysout”会生成 的代码片段System.out.println().
同样,输入“main”或“psvm”会生成 的代码片段
public static void main(String[] args) {}.

我们支持多种代码片段快捷方式和后缀补全功能。欲查看完整列表,请参见代码片段。VS Code 还支持一系列重构线条化功能。

代码片段

调试

Java 调试器是一款基于 Java 调试服务器的轻量级 Java 调试器。它与红帽的 Java™ 语言支持配合使用,允许用户在 Visual Studio Code 中调试 Java 代码。

启动调试会话很简单:点击运行|调试按钮可在你的 CodeLens 上使用main()功能,或者按 F5。调试器会自动为你生成正确的配置。

虽然 Java 调试器轻量级,但支持表达式评估、条件断点和热代码替换等高级功能。欲了解更多与调试相关的信息,请访问 Java 调试

测试

借助 Test Runner for Java 扩展的支持,您可以轻松运行、调试和管理 JUnit 和 TestNG 测试用例。

想了解更多关于测试的信息,请阅读《Testing Java》。

Spring Boot、雄猫和码头

为了进一步提升你在VS Code中的Java效率,社区为大多数流行框架和工具(如Spring BootTomcatJetty)提供了扩展。

请参见应用服务器,了解更多关于对Tomcat和Jetty的支持,以及其他支持VS代码的应用服务器的信息。

Spring Boot 支持由 VMware 提供。Microsoft 还提供了 Spring Initializr Java 支持Spring Boot 仪表盘扩展,以进一步提升您在 Visual Studio Code 中使用 Spring Boot 的体验。

请参阅《Spring Boot with VS Code》,了解更多关于VS Code中Spring Boot支持的信息,同时请参阅《部署到Azure Web Apps》或《部署到Azure Spring Apps》,了解如何从VS Code部署Spring应用到Azure。

下一步

了解更多关于 VS Code 中的 Java 知识:

继续阅读,了解更多关于Visual Studio Code的信息:

  • 基础编辑——了解强大的VS Code编辑器。
  • 代码导航——快速浏览源代码。
  • 任务——用任务来构建你的项目等等
  • 调试——了解如何在你的项目中使用调试器