现已发布!阅读 10 月份的新功能和修复。

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

为了帮助您快速设置,我们建议您使用“Java 编码包”,它捆绑了 VS Code、Java 开发工具包 (JDK) 以及 Microsoft 建议的一组扩展。编码包还可用于修复现有的开发环境。

安装 Java 编码包 - Windows

安装 Java 编码包 - macOS

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

如果您已经安装了 VS Code,并且想要为其添加 Java 支持,我们建议您使用 Java 扩展包,它是 Microsoft 建议的一组扩展

  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 服务器,例如 Wildfly)
  5. MicroProfile 扩展包
  6. CheckStyle
  7. SonarLint

由于 VS Code 周围的 Java 社区非常出色,因此列表并未就此结束。您可以在 VS Code 中轻松搜索更多 Java 扩展

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

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

注意:为了帮助您开始使用 Java 开发,您可以使用 Java 通用配置文件模板 来安装有用的扩展。您可以在 VS Code 中的配置文件 中详细了解配置文件以及它们如何让您快速为不同的编程语言和工作流程重新配置编辑器。

入门

注意:如果您在 Windows 上使用 VS Code,并且想要利用 Windows Subsystem for Linux,请参阅 在 WSL 中开发

安装 Java 开发工具包 (JDK)

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

我们建议您考虑从以下来源之一安装 JDK

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

对于 Java 或 VS Code 的新手开发者,我们在扩展中提供了一些提示。安装完 Java 扩展包 后,您可以使用 VS Code 命令面板中的 **Java: 初学者提示** 命令查看这些提示。

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

Java Getting Started

使用 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 等 IDE 不同, “Java 项目”的概念完全由扩展提供,而不是 VS Code 基础中的核心概念。在 VS Code 中处理“Java 项目”时,您必须安装必要的扩展才能处理这些项目文件。

例如,Maven、Eclipse 和 Gradle Java 项目通过 Java™ 语言支持 (Red Hat) 获得支持,该扩展利用 M2Eclipse 提供 Maven 支持,以及 Buildship 通过 Eclipse JDT 语言服务器 提供 Gradle 支持。

使用 Java Maven,您可以从 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 工具 扩展为 Spring Boot 项目提供了增强的导航和代码补全支持。

VS Code 的主要优势之一是速度。当您打开 Java 源文件或文件夹时,在几秒钟内,借助 轻量级模式,您将可以使用大纲视图以及 **转到定义** 和 **转到引用** 等命令浏览代码库。这在您首次打开项目时尤其有用。

代码补全

IntelliSense 是语言功能的通用术语,包括智能代码补全(在上下文中的方法和变量建议),适用于所有文件,包括内置模块和第三方模块。VS Code 通过 Java™ 语言支持 (Red Hat) 为 Java 提供代码补全和 IntelliSense 支持。它还提供名为 IntelliCode 的 AI 辅助 IntelliSense,将您最可能使用的内容置于补全列表的顶部。

使用 AI 增强补全

GitHub Copilot 是一种 AI 驱动的代码补全工具,可帮助您更快、更智能地编写代码。您可以在 VS Code 中使用 GitHub Copilot 扩展 生成代码,或从它生成的代码中学习。

GitHub Copilot extension in the VS Code Marketplace

GitHub Copilot 为多种语言和各种框架提供建议,它在 Python、JavaScript、TypeScript、Ruby、Go、C# 和 C++ 中表现出色。

您可以在 Copilot 文档 中了解有关如何开始使用 Copilot 的更多信息。

代码片段

Visual Studio Code 支持各种流行的 Java 代码片段,可提高您的工作效率,例如类/接口、syserr、sysout、if/else、try/catch、静态 main 方法。它还会根据 Java 语言服务器中的信息在选择过程中预览代码片段。

例如,键入“sout”或“sysout”将生成一个用于 System.out.println() 的代码片段。
同样,键入“main”或“psvm”将生成一个用于 public static void main(String[] args) {} 的代码片段。

我们支持各种代码片段快捷方式和后缀补全功能。要查看完整列表,请参见 代码片段。VS Code 还支持各种 重构代码整理 功能。

Code Snippet

调试

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

启动调试会话非常简单:单击 main() 函数的 CodeLens 上的 **运行 | 调试** 按钮,或按 F5。调试器会自动为您生成适当的配置。

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

测试

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

有关测试的更多信息,请阅读 测试 Java

Spring Boot、Tomcat 和 Jetty

为了进一步提高您在 VS Code 中的 Java 生产力,社区创建了针对大多数流行框架和工具的扩展,例如 Spring BootTomcatJetty

请参见 应用程序服务器,了解有关 Tomcat 和 Jetty 以及 VS Code 支持的其他应用程序服务器的更多信息。

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

请参见 VS Code 中的 Spring Boot,了解有关 VS Code 中 Spring Boot 支持的更多信息,还可以参见 部署到 Azure Web 应用部署到 Azure Spring 应用,了解有关从 VS Code 将 Spring 应用部署到 Azure 的更多信息。

后续步骤

详细了解 VS Code 中的 Java

继续阅读以了解有关 Visual Studio Code 的更多信息

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