[英]What's going on with CheckStyle's line length check?
我设置CheckStyle以检查Eclipse中超过80个字符的行,并且我在编辑器中设置了80个字符的边距行。 如果我将光标放在编辑器中一行代码的末尾,则坐标读取(例如)1433,77,表示左边第77个字符列 - 但是当我在同一行上运行CheckStyle时它说这行是88个字符长! 在行的末尾没有无关的制表符或其他空白字符,它肯定是77长。 CheckStyle坏了吗?
从Checkstyle文档:
行的长度的计算考虑了制表符('\\ t')的扩展空格的数量。 默认空格数为8.要指定不同数量的空格,用户可以设置适用于所有检查的TreeWalker属性tabWidth,包括LineLength; 或者可以单独为LineLength设置属性tabWidth。
http://checkstyle.sourceforge.net/config_sizes.html#LineLength
要在Eclipse中执行此操作:
TreeWalker
。 CheckStyle坏了吗?
可能不是。
我希望你/ Eclipse和CheckStyle对TAB字符的宽度有不同的看法。 听起来你觉得它意味着4个空格,而CheckStyle认为它意味着8个字符(默认)。
解决此问题的一种方法是将Eclipse配置为不在源文件中使用TAB字符,然后重新缩进源文件。
另一种方法是使用CheckStyle和Eclipse在TAB宽度上达成一致; 例如,请参阅@ MartinEllis的回答。
(我更喜欢第一种方法,因为它意味着我的源代码看起来会正确缩进,而不管平台的默认TAB宽度;即Windows与Linux / Unix。源代码中的硬TAB字符是个坏主意 。)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.