【问题标题】:Eclipse auto formatting and checkstyleEclipse 自动格式化和检查样式
【发布时间】:2023-03-31 00:15:01
【问题描述】:

我正在使用 Eclipse 和 checkstyle 的行长度不超过 80 个字符。

我已将 Eclipse 格式化程序设置为遵循该规则,它适用于大部分项目,除了某些行。

其中一些行是字符串,所以我能够将它们断开。

但是,如果我要更改以下行,则未格式化(或错误地格式化)并自动重新格式化。

        for (final PersistentAuditEvent persistentAuditEvent : persistentAuditEvents) {

    private final PersistenceAuditEventRepository persistenceAuditEventRepository;

 * <pre>
 * throw new CustomParameterizedException(&quot;myCustomError&quot;, &quot;hello&quot;, &quot;world&quot;);
 * </pre>

@Import(springfox.bean.validators.configuration.BeanValidatorPluginsConfiguration.class)

请注意,我也设置了评论的最大长度

【问题讨论】:

    标签: java eclipse checkstyle


    【解决方案1】:

    换行不能在任何地方都适用,因为它是用来使代码更清晰但不是更紧凑。

    在属性上,你可以包装赋值:

        private final PersistenceAuditEventRepository persistenceAuditEventRepository = new PersistenceAuditEventRepository();
    

    可以包装成类似的东西:

        private final PersistenceAuditEventRepository persistenceAuditEventRepository = 
                                      new PersistenceAuditEventRepository();
    

    但你不能包装这段代码:

        private final PersistenceAuditEventRepository persistenceAuditEventRepository;
    

    到:

        private final PersistenceAuditEventRepository
                  persistenceAuditEventRepository;
    

    因为换行比不换行更清晰。

    现在我会说今天 80 是一个非常低的值。我在我的项目中使用 150。

    我们都知道,使用较长的属性名称来显示意图比我们多年来看到的小属性名称更好。

    【讨论】:

    • 我同意,但我遵循 80 值是因为我的公司准则,而不是因为我的个人选择。
    【解决方案2】:

    您可以使用空行注释来强制自动格式化程序换行,例如

    private final PersistenceAuditEventRepository //
        persistenceAuditEventRepository;
    

    这当然是手动解决方案。其他 IDE,例如 IntelliJ IDEA,有一个自动格式化设置,表示永远不会超过行长。当然,即使这样也不会涵盖所有情况,因此您可能仍然需要隐藏一些警告。

    【讨论】:

    • 这就像一个魅力,谢谢。但是,由于这是一种手动解决方法,我认为它不能算作可接受的答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-13
    • 2014-02-05
    相关资源
    最近更新 更多