现已推出!阅读有关 10 月份的新功能和修复程序。

VS Code 中的 Java 构建工具

本文概述了如何在 Visual Studio Code 中使用您的 Java 构建工具。它涵盖了 用于 Java 的 Maven用于 Java 的 Gradle 扩展以及其他工具。

如果您在使用以下功能时遇到任何问题,可以通过提交 问题 联系我们。

Maven

Maven 是一种软件工具,可帮助您管理 Java 项目并自动执行应用程序构建。用于 Visual Studio Code 的 用于 Java 的 Maven 扩展提供了完全集成的 Maven 支持,使您能够浏览 Maven 项目、执行 Maven 命令以及执行构建生命周期和插件的目标。我们建议您安装 用于 Java 的扩展包,其中包含 Maven 支持和其他重要的 Java 开发功能。

安装用于 Java 的扩展包

浏览 Maven 项目

加载 Maven 项目后,扩展程序将被激活,它会自动扫描工作区中的 pom.xml 文件,并在侧边栏中显示所有 Maven 项目及其模块。

Maven Explorer

解析未知类型

Maven 扩展还支持搜索 Maven Central 以解析源代码中的未知类型。您可以通过选择悬停显示的“解析未知类型”链接来执行此操作。

使用 POM.xml

该扩展提供了代码段和自动完成功能,用于根据本地 Maven 存储库添加 Maven 依赖项。使用这些便捷的功能,您会发现添加新依赖项到 pom.xml 是多么容易。

该扩展还使您能够生成有效的 POM。

您还可以使用命令“Maven: 添加依赖项”(或 maven.project.addDependency)来帮助将新依赖项添加到 pom.xml。该过程是交互式的。

您还可以通过项目视图添加依赖项,这会调用相同的 Maven 命令。

此外,VS Code 还支持在树状视图中显示依赖项,这使您能够在一个地方检查项目中的所有依赖项,并检查潜在问题。

执行 Maven 命令和目标

通过右键单击资源管理器中的每个 Maven 项目,您可以方便地运行 Maven 目标。

该扩展还保留了每个项目的目标历史记录,因此您可以快速重新运行以前的命令,这在运行较长的自定义目标时非常有用。

有两种方法可以重新运行目标

  1. 在命令面板中,运行“Maven: 历史记录”,然后从历史记录中选择一个项目和一个命令。
  2. 右键单击一个项目,然后选择“历史记录”。然后,您可以从历史记录中选择一个以前的命令。

您还可以在设置中为将来执行指定您最喜欢的命令。

对于您在项目中使用的每个插件,该扩展还为您提供了一种简单的方法来访问每个插件中的目标。

要调试 Maven 目标,请右键单击一个目标并开始调试。Maven 扩展将使用正确的参数调用 Java 调试器。这是一个方便的省时功能。

从 Maven Archetype 生成项目

该扩展提供的另一个方便的功能是从 Archetype 生成 Maven 项目。该扩展加载本地/远程目录中列出的原型。选择后,扩展程序会将 mvn archetype:generate -D... 发送到终端。

创建 Maven 项目有几种方法

  1. 从 Maven 资源管理器中,选择“+”创建 Maven 项目按钮。

    Create Maven Project

  2. 打开命令面板 (⇧⌘P (Windows、Linux Ctrl+Shift+P)),搜索“创建 Java 项目”命令。

  3. 右键单击目标文件夹,然后选择“创建 Maven 项目”。

Gradle

VS Code 通过 用于 Java 的 Gradle 扩展支持 Gradle Java 项目(不包括 Android)。该扩展提供了几个组件来增强您的 Gradle Java 项目体验

  • Gradle 构建服务器:Gradle 构建服务器 用于导入 Gradle 项目并将构建任务委托给 Gradle 守护进程,确保与从命令行运行 Gradle 任务时一致的项目输出。
  • 可视化界面:允许您查看和管理 Gradle 任务和项目依赖项,并在 VS Code 中直接运行 Gradle 任务。
  • Gradle 语言服务器:为 Gradle 构建文件提供改进的创作体验,包括语法突出显示、错误报告和自动完成功能。

Gradle 构建服务器

默认情况下,如果您已安装用于 Java 的 Gradle 扩展,Gradle 构建服务器将用于导入 Gradle 项目。您可以通过设置 java.gradle.buildServer.enabled 来切换 Gradle 构建服务器的启用或禁用状态。

您可以在用于 Gradle 的构建服务器(构建)输出通道中查看 Gradle 构建输出,并在用于 Gradle 的构建服务器(日志)输出通道中跟踪 VS Code 与 Gradle 构建服务器之间的交互。

将测试委托给 Gradle

该扩展支持将测试执行委托给 Gradle。您可以在测试资源管理器中配置要使用的测试配置文件。

注意:请确保您已安装 用于 Java 的测试运行器 扩展才能使用此功能。

使用 Gradle 任务

当您在 VS Code 中打开 Gradle 项目时,可以通过点击 Gradle 侧边栏项目找到一些有用的 Gradle 视图。Gradle 项目视图列出了工作区中找到的所有 Gradle 项目。您可以在此处查看、运行或调试 Gradle 任务。

当工作区中有许多 Gradle 任务时,可能很难找到特定的任务。该扩展提供了一个固定任务视图来帮助您固定您最喜欢的任务,以便您可以在单独的视图中轻松找到它们。您还可以在最近的任务视图中查看最近执行的任务。

查看 Gradle 依赖项

Gradle 项目视图中,您可以在每个 Gradle 项目项下找到一个依赖项项。它包含您指定配置中的所有依赖项,您可以轻松检查项目的依赖项状态。

Gradle Dependencies

管理 Gradle 守护进程

Gradle 守护进程视图显示当前工作区的守护进程状态。它列出了与工作区版本相同的版本的所有正在运行的 Gradle 守护进程。您可以在此视图中选择停止特定守护进程或所有守护进程。

编写构建文件

该扩展为 Gradle 构建文件提供了一些有用的编写功能。

打开 Groovy Gradle 文件时,该扩展将分析 Gradle 文件并提供语义标记信息,提供更精确的突出显示结果。

Gradle Highlighting

大纲视图中,该扩展提供了打开的 Gradle 文件的文档符号,这可以帮助您轻松地导航到文件的任何部分。

Gradle Outline

如果打开的 Gradle 文件中存在任何语法错误(缺少字符、类型未找到等),您可以在问题视图中找到它们。

Gradle Problems

该扩展支持 Gradle 文件的基本自动补全,当您尝试在 Gradle 脚本中键入 Gradle 闭包或属性时,该扩展将为您建议可用的闭包或属性。

当您尝试声明新的依赖项时,该扩展将为您提供依赖项候选者列表。

其他资源

访问 GitHub 仓库 的 Maven 扩展以获取其他 配置故障排除指南

除了 Maven 之外,如果您使用 Bazel 来构建和测试您的项目,还有一个 Bazel 扩展

后续步骤

继续阅读以了解更多有关

  • Java 编辑 - 探索 VS Code 中 Java 的编辑功能。
  • Java 调试 - 了解如何使用 VS Code 调试您的 Java 项目。
  • Java 测试 - 使用 VS Code 运行您的 JUnit 和 TestNG 测试用例。
  • Java 扩展 - 了解有关 VS Code 的更多有用 Java 扩展。