[英]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.