在 Visual Studio Code 中使用 Java
Visual Studio Code 通过各种扩展来支持 Java。结合 VS Code 核心的强大功能,这些扩展为你提供了一个轻量级、高性能的代码编辑器,同时也支持许多最常见的 Java 开发技术。
本文将概述 Visual Studio Code 为 Java 开发人员提供的不同功能。如需快速了解如何使用 Visual Studio Code 编辑、运行和调试 Java 程序,请使用下方的 Java 入门教程按钮。
概述
VS Code 提供了基本的语言功能,如代码补全、重构、代码检查、格式化和代码片段,以及便捷的调试和单元测试支持。VS Code 还集成了 Maven、Tomcat、Jetty 和 Spring Boot 等工具和框架。利用 Visual Studio Code 的强大功能,Java 开发人员可以获得一个出色的工具,既能用于快速代码编辑,也能用于完整的调试和测试周期。如果正在寻找一个具备以下特点的工具,那么它将是你 Java 开发工作的绝佳选择:
- 快速、轻量、免费且开源。
- 不仅支持 Java,还支持许多其他语言。
- 帮助你开始 Java 之旅,而无需安装和学习复杂的 IDE。
- 提供强大的微服务支持,包括流行的框架、容器工具和云集成。
- 提供基于团队的协作功能,例如 Visual Studio Live Share。
- 通过 IntelliSense 和其他代码感知编辑功能提高你的生产力。
为 Java 安装 Visual Studio Code
为了帮助你快速设置,我们建议你使用 Coding Pack for Java,它是一个包含了 VS Code、Java 开发工具包 (JDK) 以及微软推荐的一系列扩展的捆绑包。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,这是微软推荐的一个扩展集合。
或者,你也可以自己安装流行的 Java 扩展来为 VS Code 添加 Java 语言支持。
下载 VS Code - 如果你还没有下载 VS Code,请为你的平台(Windows、macOS、Linux)快速安装。
还有其他流行的 Java 扩展可供你根据自己的需求选择,包括:
- Spring Boot Extension Pack
- 适用于 Java 的 Gradle
- Community Server Connectors (用于 Apache Felix, Karaf, Tomcat, Jetty 等)
- Server Connector (Red Hat 服务器,例如 Wildfly)
- Extension Pack for MicroProfile
- CheckStyle
- SonarLint
感谢 VS Code 周围强大的 Java 社区,这个列表并未就此结束。你可以在 VS Code 中轻松搜索更多 Java 扩展:
- 转到扩展视图 (⇧⌘X (Windows, Linux Ctrl+Shift+X))。
- 通过输入 "java" 筛选扩展列表。
本文档描述了这些 Java 扩展中包含的一些关键功能。
注意:为了帮助你开始 Java 开发,你可以使用 Java 通用配置文件模板来安装有用的扩展。你可以在 VS Code 配置文件中了解更多关于配置文件的信息,以及它们如何让你为不同的编程语言和工作流程快速重新配置你的编辑器。
入门
注意: 如果你在 Windows 上使用 VS Code 并希望利用适用于 Linux 的 Windows 子系统 (WSL),请参阅在 WSL 中开发。
安装 Java 开发工具包 (JDK)
Java 开发工具包 (JDK) 是用于开发 Java 应用程序的软件开发环境。为了在 Visual Studio Code 中运行 Java,你需要安装一个 JDK。Extension Pack for Java 支持 Java 1.8 或更高版本。
我们建议你考虑从以下来源之一安装 JDK:
- Amazon Corretto
- Azul Zulu
- Eclipse Adoptium's Temurin
- IBM Semeru Runtimes
- Microsoft Build of OpenJDK
- Oracle Java SE
- Red Hat build of OpenJDK
- SapMachine
注意:如果你安装了多个 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 源文件
你可以使用 VS Code 来读取、编写、运行和调试 Java 源文件,而无需创建项目。VS Code for Java 支持两种模式:轻量模式和标准模式。轻量模式非常适合只处理源文件的场景。如果你想处理一个完整的项目,则需要标准模式。需要时,你可以轻松地从轻量模式切换到标准模式。要了解更多信息,请参阅轻量模式。
处理 Java 项目
要在 VS Code 中使用 Java,你必须理解三件事:
- VS Code 如何处理工作区?
- VS Code 如何处理 Java?
- 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 项目通过 Language Support for Java™ by Red Hat 得到支持,它利用了提供 Maven 支持的 M2Eclipse 和通过 Eclipse JDT Language Server 提供 Gradle 支持的 Buildship。
通过 Maven for Java,你可以从 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 源文件或文件夹时,在轻量模式的帮助下,几秒钟内你就可以使用大纲视图以及转到定义和转到引用等命令来浏览你的代码库。这在你第一次打开项目时尤其有用。
代码补全
IntelliSense 是语言功能的总称,包括智能代码补全(上下文中的方法和变量建议),它适用于你的所有文件以及内置和第三方模块。VS Code 通过 Language Support for Java™ by Red Hat 支持 Java 的代码补全和 IntelliSense。它还提供名为 IntelliCode 的 AI 辅助 IntelliSense,将你最可能使用的内容放在补全列表的顶部。
使用 AI 增强补全
GitHub Copilot 是一款由 AI 驱动的代码补全工具,可以帮助你更快、更智能地编写代码。你可以在 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、静态 main 方法。利用 Java 语言服务器的信息,它还在选择期间提供代码片段的预览。
例如,输入 “sout” 或 “sysout” 将生成一个 System.out.println()
的代码片段。
同样,输入 “main” 或 “psvm” 将生成一个 public static void main(String[] args) {}
的代码片段。
我们支持各种代码片段快捷方式和后缀补全功能。要查看完整列表,请参阅代码片段。VS Code 还支持一系列重构和代码检查功能。
调试
Debugger for Java 是一个基于Java Debug Server的轻量级 Java 调试器。它与 Language Support for Java™ by Red Hat 协同工作,允许用户在 Visual Studio Code 中调试 Java 代码。
启动调试会话很简单:点击 main()
函数 CodeLens 上的运行|调试按钮,或按 F5。调试器将自动为你生成正确的配置。
尽管它很轻量,但 Java 调试器支持高级功能,如表达式求值、条件断点和热代码替换。有关更多调试相关信息,请访问Java 调试。
测试
在Test Runner for Java 扩展的支持下,你可以轻松运行、调试和管理你的 JUnit 和 TestNG 测试用例。
有关测试的更多信息,请阅读测试 Java。
Spring Boot、Tomcat 和 Jetty
为了进一步提高你在 VS Code 中的 Java 生产力,社区为大多数流行的框架和工具创建了扩展,例如 Spring Boot、Tomcat 和 Jetty。
参阅应用服务器,了解有关 VS Code 对 Tomcat 和 Jetty 以及其他应用服务器的支持。
Spring Boot 支持由 VMware 提供。此外,微软还提供了 Spring Initializr Java Support 和 Spring Boot Dashboard 扩展,以进一步改善你在 Visual Studio Code 中使用 Spring Boot 的体验。
参阅在 VS Code 中使用 Spring Boot了解有关 VS Code 中 Spring Boot 支持的更多信息,以及部署到 Azure Web 应用或部署到 Azure Spring Apps,了解如何从 VS Code 将 Spring 应用部署到 Azure。
后续步骤
了解更多关于在 VS Code 中使用 Java 的信息
继续阅读以了解更多关于 Visual Studio Code 的信息