当前位置: 首页 > 知识库问答 >
问题:

google-java-format eclipse插件忽略格式化程序:关闭注释

颜镜
2023-03-14

我在这里使用google-java-format插件:https://github.com/google/google-java-format(版本:4.5.0.release)

在定义Camel Java DSL路由时,我试图忽略格式化程序,以便可以获得以下缩进代码

@Component
public class MyRoute extends SpringRouteBuilder
{

  @Override
  public void configure() throws Exception
  {
   super.configure();
   from("direct:myendpointh").routeId("foo")
    .setBody().method(MyClass.class, "calc(${body})")
    .setHeader("bar").method(BarCalc.class, "compute(${body})")
    .choice()
       .when().ognl("request.body.isConditionMet")
       .to("direct:ConditionalRoute").endChoice()
    .otherwise()
       .routingSlip(header("mySlip"))
    .end();
  }
}

现在,如果我将格式化程序从eclipse更改为google-java-format:

并按照本文中的说明添加忽略格式注释

仍然每行使用1个方法调用进行格式化,并丢失choice()缩进:

@Component
public class MyRoute extends SpringRouteBuilder
{
  //@formatter:off
  @Override
  public void configure() throws Exception
  {
   super.configure();
   from("direct:myendpointh")
    .routeId("foo")
    .setBody()
    .method(MyClass.class, "calc(${body})")
    .setHeader("bar")
    .method(BarCalc.class, "compute(${body})")
    .choice()
    .when()
    .ognl("request.body.isConditionMet")
    .to("direct:ConditionalRoute")
    .endChoice()
    .otherwise()
    .routingSlip(header("mySlip"))
    .end();
  }
  //@formatter:on
}

是否有一种方法来切换特定文件的格式化程序...例如,对某些需要方法链缩进的文件禁用google-java-format?

共有1个答案

巫马山
2023-03-14

看起来他们没有实现这一点。https://github.com/google/google-java-format/wiki/faq#why-cant-i-use-magic-comments-to-disable-formatting-for某些代码段

 类似资料:
  • 我创建了一个使用标记框下拉列表的web应用程序。这在除Chrome浏览器(版本21.0.1180.89)之外的所有浏览器中都非常有效。 尽管字段和字段都具有属性,但Chrome坚持显示该字段以前输入项的下拉历史记录,这将删除标记框列表。

  • 我正在使用org。日食jdt。果心格式化程序。代码格式化程序类。我对正确设置评论的格式有问题。谁能告诉我应该使用DefaultCodeFormatterConstants中的哪些选项来正确格式化注释块? 我有这样的情况: 我想把它格式化成 甚至如何格式化评论块,就像我的例子一样,这些评论根本没有格式化。

  • sqlcl在格式化缓冲区时似乎使用格式化规则,但在格式化文件时忽略它们。 我有一个输入文件(test.sql)和一小套格式化规则(format.xml) 显示应用于缓冲区而非文件的规则的sqlcl会话: 设置SQLFORMATPATH也不起作用:

  • 我有一个作为字符串接收的HTML文档,然后使用jSoup解析它。此HTML文档(字符串形式)包含

  • 有没有一种方法让我忽略这些异常并在消费者处移动偏移量?我想,因为我使用手动偏移提交,我有这个问题。有人知道如何配置kafka-avro-serializer-6.0.0.jar来完成我想要的任务吗? 多谢了。

  • 我想让字符串值int显示为 所以我把这个代码放在我的Java课上 但当我运行到模拟器时它被强制关闭了这是logcat