diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/AstTreeStringPrinter.java b/src/main/java/com/puppycrawl/tools/checkstyle/AstTreeStringPrinter.java index de61f78c05f5..d1df7fe478ba 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/AstTreeStringPrinter.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/AstTreeStringPrinter.java @@ -26,7 +26,6 @@ import antlr.RecognitionException; import antlr.TokenStreamException; - import com.puppycrawl.tools.checkstyle.api.CheckstyleException; import com.puppycrawl.tools.checkstyle.api.DetailAST; import com.puppycrawl.tools.checkstyle.api.DetailNode; diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/PackageNamesLoader.java b/src/main/java/com/puppycrawl/tools/checkstyle/PackageNamesLoader.java index 397c0718943f..0ebe331fed02 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/PackageNamesLoader.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/PackageNamesLoader.java @@ -29,7 +29,6 @@ import java.util.Iterator; import java.util.LinkedHashSet; import java.util.Set; - import javax.xml.parsers.ParserConfigurationException; import org.xml.sax.Attributes; diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/PropertyCacheFile.java b/src/main/java/com/puppycrawl/tools/checkstyle/PropertyCacheFile.java index 9fcd55053032..af74765f7f27 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/PropertyCacheFile.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/PropertyCacheFile.java @@ -38,7 +38,6 @@ import java.util.HashSet; import java.util.Properties; import java.util.Set; - import javax.xml.bind.DatatypeConverter; import com.google.common.io.Closeables; diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/api/AbstractLoader.java b/src/main/java/com/puppycrawl/tools/checkstyle/api/AbstractLoader.java index c5589e4e9fad..e4c5ff63a549 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/api/AbstractLoader.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/api/AbstractLoader.java @@ -23,7 +23,6 @@ import java.io.InputStream; import java.util.HashMap; import java.util.Map; - import javax.xml.parsers.ParserConfigurationException; import javax.xml.parsers.SAXParserFactory; diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/DescendantTokenCheck.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/DescendantTokenCheck.java index fafd84f7bb38..bc9a87cab659 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/DescendantTokenCheck.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/DescendantTokenCheck.java @@ -23,7 +23,6 @@ import java.util.Set; import antlr.collections.AST; - import com.puppycrawl.tools.checkstyle.api.AbstractCheck; import com.puppycrawl.tools.checkstyle.api.DetailAST; import com.puppycrawl.tools.checkstyle.utils.CommonUtils; diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/AbstractSuperCheck.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/AbstractSuperCheck.java index 85859f778db5..f9801747698c 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/AbstractSuperCheck.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/AbstractSuperCheck.java @@ -23,7 +23,6 @@ import java.util.LinkedList; import antlr.collections.AST; - import com.puppycrawl.tools.checkstyle.api.AbstractCheck; import com.puppycrawl.tools.checkstyle.api.DetailAST; import com.puppycrawl.tools.checkstyle.api.TokenTypes; diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/IllegalInstantiationCheck.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/IllegalInstantiationCheck.java index f29c7f4794eb..03a1671e942a 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/IllegalInstantiationCheck.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/IllegalInstantiationCheck.java @@ -25,7 +25,6 @@ import java.util.stream.Collectors; import antlr.collections.AST; - import com.puppycrawl.tools.checkstyle.api.AbstractCheck; import com.puppycrawl.tools.checkstyle.api.DetailAST; import com.puppycrawl.tools.checkstyle.api.FullIdent; diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/InnerAssignmentCheck.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/InnerAssignmentCheck.java index 66dc13d32d50..13e5608ecf9e 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/InnerAssignmentCheck.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/InnerAssignmentCheck.java @@ -22,7 +22,6 @@ import java.util.Arrays; import antlr.collections.AST; - import com.puppycrawl.tools.checkstyle.api.AbstractCheck; import com.puppycrawl.tools.checkstyle.api.DetailAST; import com.puppycrawl.tools.checkstyle.api.TokenTypes; diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/SimplifyBooleanReturnCheck.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/SimplifyBooleanReturnCheck.java index 9e7ae58088ca..1405369de467 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/SimplifyBooleanReturnCheck.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/SimplifyBooleanReturnCheck.java @@ -20,7 +20,6 @@ package com.puppycrawl.tools.checkstyle.checks.coding; import antlr.collections.AST; - import com.puppycrawl.tools.checkstyle.api.AbstractCheck; import com.puppycrawl.tools.checkstyle.api.DetailAST; import com.puppycrawl.tools.checkstyle.api.TokenTypes; diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/StringLiteralEqualityCheck.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/StringLiteralEqualityCheck.java index bfd453cb79da..2d58acc5140d 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/StringLiteralEqualityCheck.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/StringLiteralEqualityCheck.java @@ -20,7 +20,6 @@ package com.puppycrawl.tools.checkstyle.checks.coding; import antlr.collections.AST; - import com.puppycrawl.tools.checkstyle.api.AbstractCheck; import com.puppycrawl.tools.checkstyle.api.DetailAST; import com.puppycrawl.tools.checkstyle.api.TokenTypes; diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/VariableDeclarationUsageDistanceCheck.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/VariableDeclarationUsageDistanceCheck.java index e5bdb34f7a80..d31e25e998bd 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/VariableDeclarationUsageDistanceCheck.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/coding/VariableDeclarationUsageDistanceCheck.java @@ -27,7 +27,6 @@ import java.util.regex.Pattern; import antlr.collections.ASTEnumeration; - import com.puppycrawl.tools.checkstyle.api.AbstractCheck; import com.puppycrawl.tools.checkstyle.api.DetailAST; import com.puppycrawl.tools.checkstyle.api.FullIdent; diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/ImportControlLoader.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/ImportControlLoader.java index c3fea74f2a2a..6cbf3115b779 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/ImportControlLoader.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/ImportControlLoader.java @@ -27,7 +27,6 @@ import java.util.Deque; import java.util.HashMap; import java.util.Map; - import javax.xml.parsers.ParserConfigurationException; import org.xml.sax.Attributes; @@ -50,6 +49,10 @@ final class ImportControlLoader extends AbstractLoader { private static final String DTD_PUBLIC_ID_1_1 = "-//Puppy Crawl//DTD Import Control 1.1//EN"; + /** The public ID for the configuration dtd. */ + private static final String DTD_PUBLIC_ID_1_2 = + "-//Puppy Crawl//DTD Import Control 1.2//EN"; + /** The resource for the configuration dtd. */ private static final String DTD_RESOURCE_NAME_1_0 = "com/puppycrawl/tools/checkstyle/checks/imports/import_control_1_0.dtd"; @@ -58,6 +61,10 @@ final class ImportControlLoader extends AbstractLoader { private static final String DTD_RESOURCE_NAME_1_1 = "com/puppycrawl/tools/checkstyle/checks/imports/import_control_1_1.dtd"; + /** The resource for the configuration dtd. */ + private static final String DTD_RESOURCE_NAME_1_2 = + "com/puppycrawl/tools/checkstyle/checks/imports/import_control_1_2.dtd"; + /** The map to lookup the resource name by the id. */ private static final Map DTD_RESOURCE_BY_ID = new HashMap<>(); @@ -76,6 +83,7 @@ final class ImportControlLoader extends AbstractLoader { static { DTD_RESOURCE_BY_ID.put(DTD_PUBLIC_ID_1_0, DTD_RESOURCE_NAME_1_0); DTD_RESOURCE_BY_ID.put(DTD_PUBLIC_ID_1_1, DTD_RESOURCE_NAME_1_1); + DTD_RESOURCE_BY_ID.put(DTD_PUBLIC_ID_1_2, DTD_RESOURCE_NAME_1_2); } /** diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/ImportOrderCheck.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/ImportOrderCheck.java index 973dec9a9af0..ff8074f90c48 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/ImportOrderCheck.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/ImportOrderCheck.java @@ -195,6 +195,12 @@ public class ImportOrderCheck */ public static final String MSG_ORDERING = "import.ordering"; + /** + * A key is pointing to the warning message text in "messages.properties" + * file. + */ + public static final String MSG_REDUNDANT_SEPARATION = "import.groups.separated.internally"; + /** The special wildcard that catches all remaining groups. */ private static final String WILDCARD_GROUP_NAME = "*"; @@ -443,11 +449,26 @@ else if (groupIdx > lastGroup) { else { log(line, MSG_ORDERING, name); } - + checkRedundantSeparation(groupIdx, isStatic, line, name); lastGroup = groupIdx; lastImport = name; } + /** + * Shares processing... + * + * @param groupIdx group number. + * @param isStatic whether the token is static or not. + * @param line the line of the current import. + * @param name the name of the current import. + */ + private void checkRedundantSeparation(int groupIdx, boolean isStatic, int line, String name) { + if (!beforeFirstImport && separated && groupIdx == lastGroup + && isStatic == lastImportStatic && line - lastImportLine > 1) { + log(line, MSG_REDUNDANT_SEPARATION, name); + } + } + /** * Checks whether static imports grouped by top or bottom option * are sorted alphabetically or not. diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/filters/SuppressionsLoader.java b/src/main/java/com/puppycrawl/tools/checkstyle/filters/SuppressionsLoader.java index eeea1f516e19..3de8b56c3976 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/filters/SuppressionsLoader.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/filters/SuppressionsLoader.java @@ -26,7 +26,6 @@ import java.util.Locale; import java.util.Map; import java.util.regex.PatternSyntaxException; - import javax.xml.parsers.ParserConfigurationException; import org.xml.sax.Attributes; diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/gui/BaseCellEditor.java b/src/main/java/com/puppycrawl/tools/checkstyle/gui/BaseCellEditor.java index 0b62170aa3b8..d83368cf4664 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/gui/BaseCellEditor.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/gui/BaseCellEditor.java @@ -20,7 +20,6 @@ package com.puppycrawl.tools.checkstyle.gui; import java.util.EventObject; - import javax.swing.CellEditor; import javax.swing.event.CellEditorListener; import javax.swing.event.ChangeEvent; diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/gui/CodeSelector.java b/src/main/java/com/puppycrawl/tools/checkstyle/gui/CodeSelector.java index f336da633a76..219b9b9171a9 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/gui/CodeSelector.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/gui/CodeSelector.java @@ -21,7 +21,6 @@ import java.awt.Color; import java.util.List; - import javax.swing.JTextArea; import com.puppycrawl.tools.checkstyle.api.DetailAST; diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/gui/JTreeTable.java b/src/main/java/com/puppycrawl/tools/checkstyle/gui/JTreeTable.java index 0e81fed0b1ef..8761b252f436 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/gui/JTreeTable.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/gui/JTreeTable.java @@ -29,7 +29,6 @@ import java.util.Collections; import java.util.EventObject; import java.util.List; - import javax.swing.AbstractAction; import javax.swing.Action; import javax.swing.JTable; diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/gui/Main.java b/src/main/java/com/puppycrawl/tools/checkstyle/gui/Main.java index 5d7f2720fba4..591f9553735a 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/gui/Main.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/gui/Main.java @@ -20,7 +20,6 @@ package com.puppycrawl.tools.checkstyle.gui; import java.io.File; - import javax.swing.SwingUtilities; import javax.swing.WindowConstants; diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/gui/MainFrame.java b/src/main/java/com/puppycrawl/tools/checkstyle/gui/MainFrame.java index a6a1f4a45739..069250ba8249 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/gui/MainFrame.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/gui/MainFrame.java @@ -24,7 +24,6 @@ import java.awt.event.ActionEvent; import java.awt.event.KeyEvent; import java.io.File; - import javax.swing.AbstractAction; import javax.swing.BorderFactory; import javax.swing.JButton; diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/gui/ParseTreeTablePModel.java b/src/main/java/com/puppycrawl/tools/checkstyle/gui/ParseTreeTablePModel.java index a49c62557ec0..eb5dd948a311 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/gui/ParseTreeTablePModel.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/gui/ParseTreeTablePModel.java @@ -24,7 +24,6 @@ import antlr.ASTFactory; import antlr.collections.AST; - import com.puppycrawl.tools.checkstyle.JavadocDetailNodeParser; import com.puppycrawl.tools.checkstyle.api.DetailAST; import com.puppycrawl.tools.checkstyle.api.DetailNode; diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/gui/TreeTableCellRenderer.java b/src/main/java/com/puppycrawl/tools/checkstyle/gui/TreeTableCellRenderer.java index 9eda08ef705e..fd1b9b859568 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/gui/TreeTableCellRenderer.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/gui/TreeTableCellRenderer.java @@ -21,7 +21,6 @@ import java.awt.Component; import java.awt.Graphics; - import javax.swing.JTable; import javax.swing.JTree; import javax.swing.UIManager; diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/utils/ScopeUtils.java b/src/main/java/com/puppycrawl/tools/checkstyle/utils/ScopeUtils.java index bc45ec5cdae2..c41badd616e6 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/utils/ScopeUtils.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/utils/ScopeUtils.java @@ -20,7 +20,6 @@ package com.puppycrawl.tools.checkstyle.utils; import antlr.collections.AST; - import com.puppycrawl.tools.checkstyle.api.DetailAST; import com.puppycrawl.tools.checkstyle.api.Scope; import com.puppycrawl.tools.checkstyle.api.TokenTypes; diff --git a/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages.properties b/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages.properties index b3cef114761b..f78f303f44ed 100644 --- a/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages.properties +++ b/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages.properties @@ -10,6 +10,7 @@ import.separation=''{0}'' should be separated from previous imports. import.control.missing.file=Missing an import control file. import.control.disallowed=Disallowed import - {0}. import.control.unknown.pkg=Import control file does not handle this package. +import.groups.separated.internally=Redundant separation in import group before ''{0}'' custom.import.order=Import statement for ''{2}'' is in the wrong order. Should be in the ''{0}'' group, expecting group ''{1}'' on this line. custom.import.order.line.separator=''{0}'' should be separated from previous import group. custom.import.order.lex=Wrong lexicographical order for ''{0}'' import. Should be before ''{1}''. diff --git a/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_de.properties b/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_de.properties index 07c021775bbe..4a8b4dfca782 100644 --- a/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_de.properties +++ b/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_de.properties @@ -16,3 +16,4 @@ custom.import.order.lex=Falsche lexikographische Reihenfolge des Imports von ''{ custom.import.order.nonGroup.import=Importe ohne Gruppe sollten an Ende der Import-Liste stehen: ''{0}''. custom.import.order.nonGroup.expected=Import-Anweisung für ''{1}'' ist an der falschen Stelle. Sollte in der Import-Gruppe ''{0}'' Gruppe stehen. \ Erwartet wird in dieser Zeile ein Import, der keiner Import-Gruppe entspricht. +import.groups.separated.internally=Redundante Trennung in der Importgruppe vor ''{0}'' diff --git a/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_es.properties b/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_es.properties index 3dcdfa5faf75..b59154ccefd5 100644 --- a/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_es.properties +++ b/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_es.properties @@ -15,3 +15,4 @@ custom.import.order.line.separator = ''{0}'' debe ser separado del grupo de impo custom.import.order.lex = Orden lexicográfico incorrecto de ''{0}'' importación. En caso de ser antes de ''{1}''. custom.import.order.nonGroup.import = Las importaciones sin grupos deben colocarse al final de la lista de importación: ''{0}''. custom.import.order.nonGroup.expected = Declaración de importación de ''{1}'' es en el orden equivocado. En caso de estar en el ''{0}'' del grupo, esperando que las importaciones no asignadas en esta línea. +import.groups.separated.internally=Separación redundante en el grupo de importación antes ''{0}'' diff --git a/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_fi.properties b/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_fi.properties index b427b51715cc..f493393452a9 100644 --- a/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_fi.properties +++ b/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_fi.properties @@ -15,3 +15,4 @@ custom.import.order.line.separator = ''{0}'' olisi erotettava edellisestä tuont custom.import.order.lex = Väärä leksikografisessa jotta ''{0}'' tuonnilla. Pitäisi olla ennen ''{1}''. custom.import.order.nonGroup.import = Tuonti ilman ryhmät olisi sijoitettava loppuun tuonti lista: ''{0}''. custom.import.order.nonGroup.expected = Tuo lausuman ''{1}'' on väärässä järjestyksessä. Pitäisi olla ''{0}'' ryhmä, odottaa ei osoitettu tuontia tätä linjaa. +import.groups.separated.internally=Turhat erottaminen tuonti ryhmässä ennen ''{0}'' diff --git a/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_fr.properties b/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_fr.properties index 747a59b86123..ffa444f13b7d 100644 --- a/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_fr.properties +++ b/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_fr.properties @@ -15,3 +15,4 @@ custom.import.order.line.separator=''{0}'' doit être séparé du groupe d'impor custom.import.order.lex=Mauvais ordre lexicographique pour l''import ''{0}''. Il devrait être avant ''{1}''. custom.import.order.nonGroup.import=Les imports sans groupes doivent être placés à la fin de la liste : ''{0}''. custom.import.order.nonGroup.expected=L''import pour ''{1}'' est dans le mauvais ordre. Il devrait être dans le groupe ''{0}''. +import.groups.separated.internally=Séparation redondante dans le groupe d'importation avant ''{0}'' diff --git a/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_ja.properties b/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_ja.properties index dd852f612776..c45cb81036c2 100644 --- a/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_ja.properties +++ b/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_ja.properties @@ -15,3 +15,4 @@ custom.import.order.line.separator = ''{0}'' 前のインポート・グルー custom.import.order.lex = のための間違った辞書式順序 ''{0}'' インポート。の前にすべきである ''{1}'' 。 custom.import.order.nonGroup.import = グループのない輸入はインポートリストの末尾に配置する必要があります: ''{0}''。 custom.import.order.nonGroup.expected = のインポート文 ''{1}'' は、間違った順序です。 にする必要があります ''{0}'' この行に割り当てられていない輸入を期待して、グループ。 +import.groups.separated.internally=前のインポートグループの冗長分離 ''{0}'' diff --git a/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_pt.properties b/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_pt.properties index 3a56fcb8f2de..d67e3b569334 100644 --- a/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_pt.properties +++ b/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_pt.properties @@ -15,3 +15,4 @@ custom.import.order.line.separator = ''{0}'' deve ser separado do grupo importa custom.import.order.lex = Errado ordem lexicográfica para ''{0}'' importação. Deve ser antes ''{1}''. custom.import.order.nonGroup.import = Importações sem grupos devem ser colocados no final da lista de importação: ''{0}''. custom.import.order.nonGroup.expected = Declaração de importação para ''{1}'' está na ordem errada. Deve estar no ''{0}'' grupo, esperando que as importações não atribuídos nesta linha. +import.groups.separated.internally=Separação redundante no grupo de importação antes ''{0}'' diff --git a/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_tr.properties b/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_tr.properties index e84317e0cf07..5c30b10e9463 100644 --- a/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_tr.properties +++ b/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_tr.properties @@ -18,3 +18,4 @@ custom.import.order.line.separator = {0} önceki ithalat grubundan ayrılmalıd custom.import.order.lex = Için yanlış lexicographical sipariş {0} ithal. Önce olmalı ''{1}''. custom.import.order.nonGroup.import = Gruplar olmadan İthalat İthalat listenin en sonunda yer almalıdır: {0} custom.import.order.nonGroup.expected = İthalat deyimi ''{1}'' yanlış sırayla yer almaktadır. Olmalıdır ''{0}'' bu hat üzerinde değil atanmış ithalatı bekliyor grubuna. +import.groups.separated.internally=önce ithalat grubunda gereksiz ayırma ''{0}'' diff --git a/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_zh.properties b/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_zh.properties index 0aba6e7bf364..4d29b9f95c1d 100644 --- a/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_zh.properties +++ b/src/main/resources/com/puppycrawl/tools/checkstyle/checks/imports/messages_zh.properties @@ -15,3 +15,4 @@ custom.import.order.line.separator=''{0}'' 应与之前的导入组分开。 custom.import.order.lex=导入语句''{0}'' 字典顺序错误。应在''{1}''之前。 custom.import.order.nonGroup.import=未分组导入应位于导入列表的最后: ''{0}''。 custom.import.order.nonGroup.expected=导入语句''{1}''位置错误。应位于 ''{0}'' 组,此行不应导入。 +import.groups.separated.internally=\ 进口组以前的冗余分离 ''{0}''。 diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/checks/UncommentedMainCheckTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/checks/UncommentedMainCheckTest.java index 385b0d1dd309..59e1237ef617 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/checks/UncommentedMainCheckTest.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/checks/UncommentedMainCheckTest.java @@ -29,7 +29,6 @@ import org.junit.Test; import antlr.CommonHiddenStreamToken; - import com.puppycrawl.tools.checkstyle.BaseCheckTestSupport; import com.puppycrawl.tools.checkstyle.DefaultConfiguration; import com.puppycrawl.tools.checkstyle.api.DetailAST; diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/checks/design/MutableExceptionCheckTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/checks/design/MutableExceptionCheckTest.java index 15a166ee40cb..cb1a551435d5 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/checks/design/MutableExceptionCheckTest.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/checks/design/MutableExceptionCheckTest.java @@ -29,7 +29,6 @@ import org.junit.Test; import antlr.CommonHiddenStreamToken; - import com.puppycrawl.tools.checkstyle.BaseCheckTestSupport; import com.puppycrawl.tools.checkstyle.DefaultConfiguration; import com.puppycrawl.tools.checkstyle.api.DetailAST; diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/checks/design/ThrowsCountCheckTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/checks/design/ThrowsCountCheckTest.java index 08265e40cf0b..0d3a9e86c451 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/checks/design/ThrowsCountCheckTest.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/checks/design/ThrowsCountCheckTest.java @@ -30,7 +30,6 @@ import org.junit.Test; import antlr.CommonHiddenStreamToken; - import com.puppycrawl.tools.checkstyle.BaseCheckTestSupport; import com.puppycrawl.tools.checkstyle.DefaultConfiguration; import com.puppycrawl.tools.checkstyle.api.DetailAST; diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/checks/metrics/BooleanExpressionComplexityCheckTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/checks/metrics/BooleanExpressionComplexityCheckTest.java index 2cd5ad65f37d..e1b8abfb2b4e 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/checks/metrics/BooleanExpressionComplexityCheckTest.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/checks/metrics/BooleanExpressionComplexityCheckTest.java @@ -27,7 +27,6 @@ import org.junit.Test; import antlr.CommonHiddenStreamToken; - import com.puppycrawl.tools.checkstyle.BaseCheckTestSupport; import com.puppycrawl.tools.checkstyle.DefaultConfiguration; import com.puppycrawl.tools.checkstyle.api.DetailAST; diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/checks/metrics/ClassDataAbstractionCouplingCheckTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/checks/metrics/ClassDataAbstractionCouplingCheckTest.java index 7b5871d3b934..878238d392d7 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/checks/metrics/ClassDataAbstractionCouplingCheckTest.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/checks/metrics/ClassDataAbstractionCouplingCheckTest.java @@ -27,7 +27,6 @@ import org.junit.Test; import antlr.CommonHiddenStreamToken; - import com.puppycrawl.tools.checkstyle.BaseCheckTestSupport; import com.puppycrawl.tools.checkstyle.DefaultConfiguration; import com.puppycrawl.tools.checkstyle.api.DetailAST; diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/checks/metrics/NPathComplexityCheckTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/checks/metrics/NPathComplexityCheckTest.java index eba7895e54c0..17e4e3a04f6a 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/checks/metrics/NPathComplexityCheckTest.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/checks/metrics/NPathComplexityCheckTest.java @@ -28,7 +28,6 @@ import org.junit.Test; import antlr.CommonHiddenStreamToken; - import com.puppycrawl.tools.checkstyle.BaseCheckTestSupport; import com.puppycrawl.tools.checkstyle.DefaultConfiguration; import com.puppycrawl.tools.checkstyle.api.DetailAST; diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/checks/sizes/ExecutableStatementCountCheckTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/checks/sizes/ExecutableStatementCountCheckTest.java index 1371e6cd4dec..140a2a6c735a 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/checks/sizes/ExecutableStatementCountCheckTest.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/checks/sizes/ExecutableStatementCountCheckTest.java @@ -27,7 +27,6 @@ import org.junit.Test; import antlr.CommonHiddenStreamToken; - import com.puppycrawl.tools.checkstyle.BaseCheckTestSupport; import com.puppycrawl.tools.checkstyle.DefaultConfiguration; import com.puppycrawl.tools.checkstyle.api.DetailAST; diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/checks/whitespace/GenericWhitespaceCheckTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/checks/whitespace/GenericWhitespaceCheckTest.java index 22e3cdcf2be4..59520b0f9dd6 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/checks/whitespace/GenericWhitespaceCheckTest.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/checks/whitespace/GenericWhitespaceCheckTest.java @@ -34,7 +34,6 @@ import org.junit.Test; import antlr.CommonHiddenStreamToken; - import com.puppycrawl.tools.checkstyle.BaseCheckTestSupport; import com.puppycrawl.tools.checkstyle.DefaultConfiguration; import com.puppycrawl.tools.checkstyle.api.DetailAST; diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/checks/whitespace/NoWhitespaceAfterCheckTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/checks/whitespace/NoWhitespaceAfterCheckTest.java index 27873bdedd0c..580447789ed3 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/checks/whitespace/NoWhitespaceAfterCheckTest.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/checks/whitespace/NoWhitespaceAfterCheckTest.java @@ -30,7 +30,6 @@ import org.junit.Test; import antlr.CommonHiddenStreamToken; - import com.puppycrawl.tools.checkstyle.BaseCheckTestSupport; import com.puppycrawl.tools.checkstyle.DefaultConfiguration; import com.puppycrawl.tools.checkstyle.api.DetailAST; diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/doclets/TokenTypesDocletTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/doclets/TokenTypesDocletTest.java index ec34de070a13..edaa5f981ba6 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/doclets/TokenTypesDocletTest.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/doclets/TokenTypesDocletTest.java @@ -28,7 +28,6 @@ import java.lang.reflect.Method; import java.util.ArrayList; import java.util.List; - import javax.tools.JavaFileObject; import org.junit.Assert; diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/filters/SuppressWithNearbyCommentFilterTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/filters/SuppressWithNearbyCommentFilterTest.java index 1ee0d78bb47c..3ffb9118e5d3 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/filters/SuppressWithNearbyCommentFilterTest.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/filters/SuppressWithNearbyCommentFilterTest.java @@ -47,7 +47,6 @@ import com.puppycrawl.tools.checkstyle.checks.naming.ConstantNameCheck; import com.puppycrawl.tools.checkstyle.checks.naming.MemberNameCheck; import com.puppycrawl.tools.checkstyle.utils.CommonUtils; - import nl.jqno.equalsverifier.EqualsVerifier; public class SuppressWithNearbyCommentFilterTest diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/filters/SuppressionCommentFilterTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/filters/SuppressionCommentFilterTest.java index e8ee8b383c54..4d89afe5f040 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/filters/SuppressionCommentFilterTest.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/filters/SuppressionCommentFilterTest.java @@ -47,7 +47,6 @@ import com.puppycrawl.tools.checkstyle.checks.naming.ConstantNameCheck; import com.puppycrawl.tools.checkstyle.checks.naming.MemberNameCheck; import com.puppycrawl.tools.checkstyle.utils.CommonUtils; - import nl.jqno.equalsverifier.EqualsVerifier; public class SuppressionCommentFilterTest diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/filters/SuppressionFilterTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/filters/SuppressionFilterTest.java index cc802a9a84d6..07b3abc9a52e 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/filters/SuppressionFilterTest.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/filters/SuppressionFilterTest.java @@ -35,10 +35,8 @@ import org.junit.Test; import org.junit.rules.TemporaryFolder; import org.junit.runner.RunWith; - import org.mockito.BDDMockito; import org.mockito.Mockito; - import org.powermock.api.mockito.PowerMockito; import org.powermock.core.classloader.annotations.PrepareForTest; import org.powermock.modules.junit4.PowerMockRunner; @@ -51,7 +49,6 @@ import com.puppycrawl.tools.checkstyle.api.AuditEvent; import com.puppycrawl.tools.checkstyle.api.CheckstyleException; import com.puppycrawl.tools.checkstyle.utils.CommonUtils; - import nl.jqno.equalsverifier.EqualsVerifier; import nl.jqno.equalsverifier.Warning; diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/grammars/AstRegressionTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/grammars/AstRegressionTest.java index 37f13af3ea68..1068e7e124e5 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/grammars/AstRegressionTest.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/grammars/AstRegressionTest.java @@ -37,7 +37,6 @@ import antlr.ParserSharedInputState; import antlr.SemanticException; import antlr.TokenBuffer; - import com.puppycrawl.tools.checkstyle.AstTreeStringPrinter; import com.puppycrawl.tools.checkstyle.BaseCheckTestSupport; import com.puppycrawl.tools.checkstyle.api.FileText; diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/internal/CheckUtil.java b/src/test/java/com/puppycrawl/tools/checkstyle/internal/CheckUtil.java index d680c3646316..2a509875ebe3 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/internal/CheckUtil.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/internal/CheckUtil.java @@ -29,7 +29,6 @@ import java.util.Locale; import java.util.Properties; import java.util.Set; - import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/internal/CommitValidationTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/internal/CommitValidationTest.java index 875531cf1768..466416d29145 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/internal/CommitValidationTest.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/internal/CommitValidationTest.java @@ -42,7 +42,6 @@ import org.eclipse.jgit.revwalk.RevCommit; import org.eclipse.jgit.revwalk.RevWalk; import org.eclipse.jgit.storage.file.FileRepositoryBuilder; - import org.junit.BeforeClass; import org.junit.Test; diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/internal/XDocUtil.java b/src/test/java/com/puppycrawl/tools/checkstyle/internal/XDocUtil.java index 5acd40ada6a9..854c4f8530ab 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/internal/XDocUtil.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/internal/XDocUtil.java @@ -26,7 +26,6 @@ import java.nio.file.Paths; import java.util.HashSet; import java.util.Set; - import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/internal/XDocsPagesTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/internal/XDocsPagesTest.java index 86e06a5fbe3d..b2c32a0f0af7 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/internal/XDocsPagesTest.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/internal/XDocsPagesTest.java @@ -41,7 +41,6 @@ import java.util.Set; import java.util.TreeSet; import java.util.regex.Pattern; - import javax.xml.parsers.ParserConfigurationException; import org.apache.commons.beanutils.PropertyUtils; diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/internal/XmlUtil.java b/src/test/java/com/puppycrawl/tools/checkstyle/internal/XmlUtil.java index 4f47a4fb2e9f..c6368697dca8 100644 --- a/src/test/java/com/puppycrawl/tools/checkstyle/internal/XmlUtil.java +++ b/src/test/java/com/puppycrawl/tools/checkstyle/internal/XmlUtil.java @@ -23,7 +23,6 @@ import java.io.StringReader; import java.util.LinkedHashSet; import java.util.Set; - import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; diff --git a/src/xdocs/config_imports.xml b/src/xdocs/config_imports.xml index 570664410b91..61b8540b1eb9 100644 --- a/src/xdocs/config_imports.xml +++ b/src/xdocs/config_imports.xml @@ -1158,6 +1158,10 @@ public class InputEclipseStaticImportsOrder { }