10

java代码的eclipse自动格式化非常棒!你可以编写糟糕的代码,然后简单地键入CTRL++ - 并且代码很棒SHIFTf

但是,有时我想将部分代码标记为不自动格式化。例如通过流畅的界面:

public void fluentInterfaceJooqDemo() {
    create.select(AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME, count())
          .from(AUTHOR)
          .join(BOOK).on(AUTHOR.ID.equal(BOOK.AUTHOR_ID))
          .where(BOOK.LANGUAGE.eq("DE"))
          .and(BOOK.PUBLISHED.gt(date("2008-01-01")))
          .groupBy(AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME)
          .having(count().gt(5))
          .orderBy(AUTHOR.LAST_NAME.asc().nullsFirst())
          .limit(2)
          .offset(1)
          .forUpdate()
          .of(AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME);
}

在输入CTRL+ SHIFT+之后f

public void fluentInterfaceJooqDemo() {
    create.select(AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME, count()).from(AUTHOR).join(BOOK).on(AUTHOR.ID.equal(BOOK.AUTHOR_ID))
            .where(BOOK.LANGUAGE.eq("DE")).and(BOOK.PUBLISHED.gt(date("2008-01-01"))).groupBy(AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME)
            .having(count().gt(5)).orderBy(AUTHOR.LAST_NAME.asc().nullsFirst()).limit(2).offset(1).forUpdate()
            .of(AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME);
}

但是,我正在寻找一些方法来标记此类代码non-autoformat,例如

//non-format
public void fluentInterfaceJooqDemo() {
    ...
}
4

3 回答 3

10

我认为你可以使用@formatter:off@formatter:on

// @formatter:off
public void fluentIterfaceThingy() { 
...
}
// @formatter:on

可能必须在代码样式部分中打开此选项:Window->Preferences->Java->Formatter->Edit->On/Of Tags

于 2014-01-08T15:04:16.013 回答
1

是的,这在 Eclipse 中是可配置的。您可以重新定义开/关关键字。

在此处输入图像描述

于 2014-01-08T15:46:22.223 回答
0

我不确定是否需要额外的配置(我们公司有一个定制的 eclipse),但这对我有用:

// @formatter:off // @formatter:on

于 2014-01-08T15:05:24.813 回答