我可以看到一个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;
答案 0 :(得分:8)
ctrl+shift+o
(组织导入)将使Eclipse正确地对您的导入进行排序。
有一个约定,根据该约定,应该订购导入,checkstyle告诉您没有按顺序列出您的导入。
您可以在ImportOrder
section of the documentation:
检查导入的排序/分组。特点是:
- 分组导入:确保导入组按特定顺序排列(例如,java。首先出现,javax出现在第二位,然后是其他所有内容)
- 在组之间添加分隔:确保每组之间有一个空行
- 对每个组内的导入进行排序:确保每个组中的导入都按字典顺序排列
- 根据案例排序:确保导入之间的比较区分大小写
- 分组静态导入:确保常规导入和静态导入之间的相对顺序(请参阅导入顺序)
答案 1 :(得分:7)
您还可以修改您的检查文件,以便默认使用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>
答案 2 :(得分:3)
查看Preferences > Java > Code Style > Organize Imports
以配置Source > Organize Imports
命令使用的排序顺序和分组( Ctrl + Shift + O < / kbd>,在OS X Cmd + Shift + O 。
答案 3 :(得分:0)
对我来说,解决此问题的原因是按字母顺序排列进口商品。例如,scp -r yourusername@yourserver:/home/yourusername/examplefile yourusername2@yourserver2:/home/yourusername2/
应该在顶部。