我们希望使用单行语法拥有简单的 Java 属性访问器,因此它们占用的空间要少得多,并且更具可读性(就快速“查看”访问器集而言)。但是我们确实希望在我们的 checkstyle 配置中为所有其他内容强制执行多行方法语法。但我不确定如何在 Checkstyle 配置中为访问器设置此异常(exception),并怀疑这可能是不可能的。

所以我们希望我们的访问器看起来像这样:

public String getFoo() { return foo; }
public void setFoo(String foo) { this.foo = foo; }

[事实上,我们宁愿根本没有简单的访问器,而只是用 @Property 或其他东西注释私有(private)成员变量,并为我们生成访问器,因为编写无休止的 get 和 set 代码并没有带来真正的好处,但这是通用的 Java就这个问题而言,沮丧和旁白。]

最佳答案

如果您想使用 Checkstyle 解决这个问题,那么您必须编写一个或多个自定义检查。您的支票将是您正在修改的支票的子类。然后,对于所有受影响的检查,您将自己的子类检查输入到 checkstyle 配置中(并删除原始检查)。

您也许可以从 JavadocMethodCheck 中提取一些代码,它已经检测到了普通访问器。这听起来像很多工作,但代码并不多,因为您在子类中所做的修改总是相同的,因此可以放入辅助类中。

老实说,我不认为 Checkstyle 可以开箱即用,抱歉!

关于java - 允许使用 Checkstyle 的单行访问器(getter/setter)语法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2743605/

10-10 03:12