首页 > 解决方案 > 如何将第一个方法调用与带有 java 的 vscode 的流利格式化程序保持在同一行?

问题描述

我发现这些格式化程序设置正在寻找 vscode 流利的格式化程序。可以使用以下 vscode-java 设置进行设置 "java.format.settings.url": "https://raw.githubusercontent.com/snjeza/vscode-test/master/fluent.xml" 似乎所有流畅的方法调用都将由新行进行。我对单个方法调用的期望是它会保持在同一行。

考虑一个简单的方法。我的期望是:

public static String cleanText(String text) {
  return text.replace("@#!£", "");

但格式化时实际发生的是:

public static String cleanText(String text) {
  return text
      .replace("@#!£", "");
}

对于更长的方法链,我的期望是

public void method() {
  variable.myMethod()
      .anotherMethod()
      .somethingElse();
}

Eclipse 格式化程序可以进行这种更改吗?

我知道还有其他几个相关的问题,但是除了第一次调用之外,它们都没有解决包装方法链的这个特定问题。

标签: javaintellij-ideavisual-studio-codefluentmethod-chaining

解决方案


fluent.xml在本地下载并将配置更改join_wrapped_linesfalse

<setting id="org.eclipse.jdt.core.formatter.join_wrapped_lines" value="false"/>

在 Settings.json 中,设置

"java.format.settings.url": "\the absolute path to fluent.xml\"

右键单击并选择格式化文档

在此处输入图像描述


推荐阅读