常见问题

感谢你对Visual Studio Code上的Java感兴趣!这个常见问题解答希望能解答你可能有的一些疑问。

这些Java扩展是开源的吗?

是的。Red Hat、Microsoft 和 VMware 提供的所有 Java 扩展都是开源的,社区支持的大多数扩展也是如此。你可以在GitHub的市场页面找到它们对应的仓库。

Visual Studio Code 上还会有其他新功能吗?

绝对是。我们使用 GitHub 问题来跟踪每个扩展的请求和计划工作。目前我们正在添加更多重构和线条化功能,以提升编辑效率,同时进行一些性能改进以加快编辑速度。

我们的大部分工作都是根据客户反馈收集和优先排序的。如果您有兴趣分享您的看法,可以直接访问我们的项目库提交新刊,分享您的想法。

我们团队的容量有限,我们非常希望鼓励优秀的Java社区贡献更多内容。如果你对自己的想法充满热情,并希望帮助其他Java开发者,欢迎加入我们!值得考虑的领域包括 Gradle 支持、代码分析和测试覆盖工具、性能分析器,以及额外的框架支持,如 DropWizard、JavaFX、JPA、Play、Akka、OSGi。

我可以用其他IDE的快捷键吗?

当然。VS Code 中的键位图扩展会修改 VS Code 的快捷方式,使其与其他编辑器的快捷方式保持一致。你可以在市场的Keymaps扩展类别中找到IntelliJ IDEA键盘快捷键Eclipse键映射以及其他流行编辑器的键映射。

我在哪里可以找到Visual Studio Code上Java支持的最新进展?

你可以关注我们的 Java at Microsoft 博客,随时了解我们的进展。

在VS Code中使用Java时,更新Java扩展包后,你可能还会看到发布说明部分。备注会让你了解扩展中包含的重要更新。

我如何在新版本的 Java 中使用 Visual Studio Code?

多亏了JDT的上游更新,你现在可以用VS Code把项目构建到Java 22。要使用实验/预览语言功能,你需要修改项目设置。

Maven - 修改pom.xml:

  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <artifactId>maven-compiler-plugin</artifactId>
          <configuration>
            <release>22</release>
            <compilerArgs>--enable-preview</compilerArgs>
          </configuration>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>

Gradle:

sourceCompatibility = 22
tasks.withType(JavaCompile) {
    options.compilerArgs += '--enable-preview'
}
tasks.withType(Test) {
    jvmArgs += "--enable-preview"
}

注意:如果你修改的是已经在VS Code中打开的项目,可能需要强制清理工作区并重新加载。为此,运行命令 Java: Clean Java Language Server Workspace

我如何在企业代理后面使用它?

在企业代理后使用Java Language Support(redhat.java)扩展时,可能需要让Java语言服务器知道如何连接互联网,以便通过该代理下载构建运行时、Java依赖及其源代码。

这通过配置java.jdt.ls.vmargsVS Code 偏好设置(在一行中):

{
  "java.jdt.ls.vmargs": "-Dhttp.proxyHost=webproxy.corp.net -Dhttp.proxyPort=proxyport -Dhttp.proxyUser=user -Dhttp.proxyPassword=password -Dhttps.proxyHost=webproxy.corp.net -Dhttps.proxyPort=proxyport -Dhttps.proxyUser=user -Dhttps.proxyPassword=password"
}

Visual Studio 会有这个功能吗?

目前我们不打算将Java支持扩展到Visual Studio。已经有很棒的 Java 集成开发环境,我们专注于 VS Code,以提供多语种编辑器中的轻量级体验。

VS Code Java 支持其他显示语言吗?

目前我们支持中文,除了支持英语,还支持一些扩展,包括Java的调试器Java的Test RunnerJava的MavenJava的Project Manager。要了解如何切换 VS Code 显示语言,请参见显示语言

如果你需要额外的显示语言支持,可以为扩展仓库贡献内容。

如何排查并贡献 Java 语言服务器

你可以访问 Java for Visual Studio Code 维基,查找以下相关答案:

  1. “Classpath 不完整”警告
  2. Maven项目的注释处理支持
  3. 贡献一个 Java 扩展
  4. Formatter 设置
  5. 龙目岛支持
  6. 使用代理
  7. 故障排除