如何删除Checkstyle信息(导入org.apache.log4j.Logger的顺序错误)

问题描述 投票:0回答:5

我可以看到 Checkstyle 信息,上面写着 -

Wrong order for import, org.apache.log4j.Logger
。我无法获得太多关于为什么我得到这个的信息。任何帮助,将不胜感激。下面是代码片段:

import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;
import jxl.write.Label;
import jxl.write.WritableCell;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
import jxl.write.biff.RowsExceededException;

import org.apache.log4j.Logger;

import com.company.department.team.test.Configuration;
java eclipse checkstyle
5个回答
10
投票

ctrl+shift+o
(组织导入)将使 Eclipse 正确排序您的导入。

有一个约定,应根据该约定对导入进行排序,而 checkstyle 告诉您您尚未按该顺序列出导入。

您可以在文档的

ImportOrder
部分阅读更多相关信息

检查导入的排序/分组。特点是:

  • groups 导入:确保导入组按特定顺序出现(例如,java. 首先,javax. 第二,然后是其他所有)
  • 在组之间添加分隔:确保每个组之间有一个空行
  • 对每个组内的导入进行排序:确保每个组内的导入按字典顺序排列
  • 根据大小写排序:确保导入之间的比较区分大小写
  • 对静态导入进行分组:确保常规导入和静态导入之间的相对顺序(参见导入顺序)

8
投票

您还可以修改您的检查文件以遵循 Eclipse 默认情况下的操作。您需要更改模块“CustomImportOrder”并更改“customImportOrderRules”。

请参阅 http://checkstyle.sourceforge.net/config_imports.html#CustomImportOrder 了解如何进行更多自定义。

这是我目前正在使用的:

<module name="CustomImportOrder">
    <property name="specialImportsRegExp" value="gov." />
    <property name="sortImportsInGroupAlphabetically" value="true" />
    <property name="customImportOrderRules"
        value="STATIC###SPECIAL_IMPORTS###STANDARD_JAVA_PACKAGE###THIRD_PARTY_PACKAGE" />
</module>

3
投票

查看

Preferences > Java > Code Style > Organize Imports
以配置
Source > Organize Imports
命令使用的排序顺序和分组(Ctrl+Shift+O,在 OS X 上为 Cmd+Shift+O


0
投票

对我来说,解决这个问题的方法是按字母顺序排列导入。例如,

import com.company.department.team.test.Configuration;
应该位于顶部。


0
投票

对于 Mac 来说是 ctrl+options+o。

您需要更改设置,从代码样式> java,如下所示

勾选使用单类导入

使用“*”导入的类计数使其非常高,例如 100

勾选单独使用静态导入。

© www.soinside.com 2019 - 2024. All rights reserved.