在 VS Code 中试试

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。
  • 帮助你无需安装和学习复杂的 IDE 即可开始你的 Java 之旅。
  • 提供出色的微服务支持,包括流行的框架、容器工具和云集成。
  • 提供基于团队的协作功能,例如 Visual Studio Live Share
  • 通过智能感知和其他代码感知编辑功能提高你的工作效率。

安装适用于 Java 的 Visual Studio Code

为了帮助你快速完成设置,我们建议你使用 Coding Pack for Java,它是 VS Code、Java Development Kit (JDK) 和 Microsoft 推荐的扩展集合的捆绑包。Coding Pack 也可用于修复现有的开发环境。

安装 Coding Pack for Java - Windows

安装 Coding Pack for Java - macOS

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

如果你已经安装了 VS Code 并想为其添加 Java 支持,我们推荐使用 Extension Pack for Java,这是一个 Microsoft 推荐的扩展集合

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

安装 Extension Pack for Java

此外,你也可以自行安装流行的 Java 扩展来为 VS Code 添加 Java 语言支持。

下载 VS Code - 如果你还没有下载 VS Code,请快速为你的平台(Windows、macOS、Linux)安装。

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

  1. Spring Boot 扩展包
  2. 适用于 Java 的 Gradle
  3. Community Server Connectors(适用于 Apache Felix、Karaf、Tomcat、Jetty 等)
  4. Server Connector(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 并想利用适用于 Linux 的 Windows 子系统,请参阅在 WSL 中开发

安装 Java Development Kit (JDK)

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

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

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

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

打开命令面板(⇧⌘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 项目通过利用提供 Maven 支持的M2Eclipse 和通过 Eclipse JDT Language Server 提供 Gradle 支持的Buildship,由Red Hat 的 Java™ 语言支持提供支持。

借助适用于 Java 的 Maven,你可以通过 Maven Archetypes 生成项目,浏览工作区内的所有 Maven 项目,并轻松地通过嵌入式资源管理器执行 Maven 目标。项目还可以通过 Project Manager for 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 源文件或文件夹时,在几秒钟内,借助轻量模式,你将能够使用大纲视图以及诸如转到定义转到引用之类的命令来导航你的代码库。这在首次打开项目时尤其有用。

代码补全

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

使用 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 代码片段,以提高你的工作效率,例如 class/interface、syserr、sysout、if/else、try/catch、static main method。它还利用 Java 语言服务器的信息,在选择时提供代码片段的预览。

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

我们支持广泛的代码片段快捷方式和后缀补全功能。要查看完整列表,请参阅代码片段。VS Code 还支持一系列重构代码检查功能。

Code Snippet

调试

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

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

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

测试

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

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

Spring Boot、Tomcat 和 Jetty

为了进一步提高你在 VS Code 中的 Java 工作效率,社区创建了适用于大多数流行框架和工具的扩展,例如 Spring BootTomcatJetty

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

Spring Boot 支持由 VMware 提供。此外,Microsoft 还提供了 Spring Initializr Java SupportSpring Boot Dashboard 扩展,以进一步提升你在 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 编辑器。
  • 代码导航 - 快速浏览源代码。
  • 任务 - 使用任务构建项目等等
  • 调试 - 了解如何使用调试器调试项目