猿问

Visual Studio Code:格式化 Java 方法链

我正在尝试更改 VSCode 设置,这将允许我使用方法链接执行类似操作:


Flux

  .just("test", "string", "flux")

  .log()

  .map(String::toUpperCase);

问题是每当应用格式化程序时,它都会将其改回一行:


Flux.just("test", "string", "flux").log().map(String::toUpperCase);

我安装了 Java 扩展包,其中包括“Red Hat 对 Java 的语言支持”。该扩展程序添加了一些格式选项,我一直在尝试使用它们,但没有这样的运气。


以下是我更改的格式选项:


"editor.formatOnSave": true,

"java.format.settings.url": "https://raw.githubusercontent.com/google/styleguide/gh-pages/eclipse-java-google-style.xml",

"java.format.enabled": true,

"java.format.settings.profile": "GoogleStyle"

任何人都知道如何让格式化程序单独保留多行方法链接?


慕田峪7331174
浏览 381回答 2
2回答

阿波罗的战车

我获得了相同的结果,而无需下载 Eclipse 来导出所需的设置。我从vscode-java-formatter.md阅读了精彩的指南我在 vscode 中已经有了这个 JSON 设置:"java.format.settings.url":&nbsp;"dir/to/eclipse-java-google-style.xml"在 local 中eclipse-java-google-style.xml,将以下值从 更改true为false。<setting&nbsp;id="org.eclipse.jdt.core.formatter.join_wrapped_lines"&nbsp;value="false"/>保存并重新启动 vscode。现在链式方法不会被挤进一行。

精慕HU

来自Redhat Developer VSCode-Java 插件维基:您还可以在项目的.settings/org.eclipse.jdt.core.prefs 中定义格式首选项。它将覆盖全局格式设置。由于这相当乏味,因此编辑这些首选项的最佳方法是在 Eclipse 中打开您的项目并在那里为您的项目设置格式首选项。您将寻找的选项是:换行>换行设置>函数调用>限定调用将其设置为Wrap all elements,每个元素都在一个新行上,如下图所示:
随时随地看视频慕课网APP

相关分类

Java
我要回答