diff --git a/.ci/files/all-java.xml b/.ci/files/all-java.xml
index 9a2ae34ab4..c67bcd4b12 100644
--- a/.ci/files/all-java.xml
+++ b/.ci/files/all-java.xml
@@ -48,7 +48,6 @@
-
@@ -76,8 +75,6 @@
-
-
@@ -109,6 +106,7 @@
+
@@ -229,7 +227,6 @@
-
diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/bestpractices/UnusedImportsRule.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/bestpractices/UnusedImportsRule.java
deleted file mode 100644
index b5ae982234..0000000000
--- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/bestpractices/UnusedImportsRule.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * BSD-style license; for more info see http://pmd.sourceforge.net/license.html
- */
-
-package net.sourceforge.pmd.lang.java.rule.bestpractices;
-
-import java.util.HashSet;
-import java.util.Set;
-
-import net.sourceforge.pmd.lang.java.ast.internal.ImportWrapper;
-import net.sourceforge.pmd.lang.java.rule.codestyle.UnnecessaryImportRule;
-
-@Deprecated
-public class UnusedImportsRule extends UnnecessaryImportRule {
- // Note: when removing this from pmd 7, the compiled classes used
- // for tests need to be moved to test/java/.../codestyle/unnecessaryimport
-
- @Deprecated
- protected Set imports = new HashSet<>();
-
- @Override
- protected boolean justReportUnusedImports() {
- return true;
- }
-}
diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/codestyle/DuplicateImportsRule.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/codestyle/DuplicateImportsRule.java
deleted file mode 100644
index 715f2ab4e0..0000000000
--- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/codestyle/DuplicateImportsRule.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/**
- * BSD-style license; for more info see http://pmd.sourceforge.net/license.html
- */
-
-package net.sourceforge.pmd.lang.java.rule.codestyle;
-
-import java.lang.reflect.Method;
-import java.lang.reflect.Modifier;
-import java.util.HashSet;
-import java.util.Set;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
-import net.sourceforge.pmd.lang.java.ast.ASTCompilationUnit;
-import net.sourceforge.pmd.lang.java.ast.ASTImportDeclaration;
-import net.sourceforge.pmd.lang.java.ast.internal.ImportWrapper;
-import net.sourceforge.pmd.lang.java.rule.AbstractJavaRule;
-
-@Deprecated
-public class DuplicateImportsRule extends AbstractJavaRule {
- private static final Logger LOG = Logger.getLogger(DuplicateImportsRule.class.getName());
-
- private Set singleTypeImports;
- private Set importOnDemandImports;
-
- @Override
- public Object visit(ASTCompilationUnit node, Object data) {
- singleTypeImports = new HashSet<>();
- importOnDemandImports = new HashSet<>();
- super.visit(node, data);
-
- // this checks for things like:
- // import java.io.*;
- // import java.io.File;
- for (ImportWrapper thisImportOnDemand : importOnDemandImports) {
- for (ImportWrapper thisSingleTypeImport : singleTypeImports) {
- String singleTypeFullName = thisSingleTypeImport.getFullName(); // java.io.File
-
- String singleTypePkg = thisSingleTypeImport.getPackageName(); // java.io
- String singleTypeName = thisSingleTypeImport.getName(); // File
-
- if (thisImportOnDemand.getFullName().equals(singleTypePkg)
- && !isDisambiguationImport(node, singleTypePkg, singleTypeName)) {
- addViolation(data, thisSingleTypeImport.getNode(), singleTypeFullName);
- }
- }
- }
- singleTypeImports.clear();
- importOnDemandImports.clear();
- return data;
- }
-
- /**
- * Check whether this seemingly duplicate import is actually a
- * disambiguation import.
- *
- * Example: import java.awt.*; import java.util.*; import java.util.List;
- * //Needed because java.awt.List exists
- */
- private boolean isDisambiguationImport(ASTCompilationUnit node, String singleTypePkg, String singleTypeName) {
- // Loop over .* imports
- for (ImportWrapper thisImportOnDemand : importOnDemandImports) {
- // Skip same package
- if (!thisImportOnDemand.getFullName().equals(singleTypePkg)) {
- if (!thisImportOnDemand.isStaticOnDemand()) {
- String fullyQualifiedClassName = thisImportOnDemand.getFullName() + "." + singleTypeName;
- if (node.getClassTypeResolver().classNameExists(fullyQualifiedClassName)) {
- // Class exists in another imported package
- return true;
- }
- } else {
- Class> importClass = node.getClassTypeResolver().loadClassOrNull(thisImportOnDemand.getFullName());
- if (importClass != null) {
- try {
- for (Method m : importClass.getMethods()) {
- if (Modifier.isStatic(m.getModifiers()) && m.getName().equals(singleTypeName)) {
- // static method in another imported class
- return true;
- }
- }
- } catch (LinkageError e) {
- // This is an incomplete classpath, report the missing class
- LOG.log(Level.FINE, "Possible incomplete auxclasspath: Error while processing methods", e);
- }
- }
- }
- }
- }
-
- String fullyQualifiedClassName = "java.lang." + singleTypeName;
- // Class might exist in another imported package
- return node.getClassTypeResolver().classNameExists(fullyQualifiedClassName);
- }
-
- @Override
- public Object visit(ASTImportDeclaration node, Object data) {
- ImportWrapper wrapper = new ImportWrapper(node);
-
- // blahhhh... this really wants to be ASTImportDeclaration to be
- // polymorphic...
- if (node.isImportOnDemand()) {
- if (importOnDemandImports.contains(wrapper)) {
- addViolation(data, node, node.getImportedName());
- } else {
- importOnDemandImports.add(wrapper);
- }
- } else {
- if (singleTypeImports.contains(wrapper)) {
- addViolation(data, node, node.getImportedName());
- } else {
- singleTypeImports.add(wrapper);
- }
- }
- return data;
- }
-
-}
diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/codestyle/UnnecessaryImportRule.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/codestyle/UnnecessaryImportRule.java
index a311692615..b6ee15bfbb 100644
--- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/codestyle/UnnecessaryImportRule.java
+++ b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/codestyle/UnnecessaryImportRule.java
@@ -28,7 +28,6 @@ import net.sourceforge.pmd.lang.java.ast.TypeNode;
import net.sourceforge.pmd.lang.java.ast.internal.ImportWrapper;
import net.sourceforge.pmd.lang.java.ast.internal.PrettyPrintingUtil;
import net.sourceforge.pmd.lang.java.rule.AbstractJavaRule;
-import net.sourceforge.pmd.lang.java.rule.bestpractices.UnusedImportsRule;
public class UnnecessaryImportRule extends AbstractJavaRule {
// todo: java lang imports may be necessary if they're shadowed by a
@@ -64,10 +63,6 @@ public class UnnecessaryImportRule extends AbstractJavaRule {
private static final Pattern[] PATTERNS = { SEE_PATTERN, LINK_PATTERNS, VALUE_PATTERN, THROWS_PATTERN };
- /**
- * The deprecated rule {@link UnusedImportsRule} extends this class
- * and overrides this.
- */
protected boolean justReportUnusedImports() {
return false;
}
diff --git a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/errorprone/ImportFromSamePackageRule.java b/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/errorprone/ImportFromSamePackageRule.java
deleted file mode 100644
index 81c56e5bbb..0000000000
--- a/pmd-java/src/main/java/net/sourceforge/pmd/lang/java/rule/errorprone/ImportFromSamePackageRule.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/**
- * BSD-style license; for more info see http://pmd.sourceforge.net/license.html
- */
-
-package net.sourceforge.pmd.lang.java.rule.errorprone;
-
-import org.apache.commons.lang3.StringUtils;
-
-import net.sourceforge.pmd.lang.java.ast.ASTImportDeclaration;
-import net.sourceforge.pmd.lang.java.rule.AbstractJavaRule;
-import net.sourceforge.pmd.lang.java.symboltable.SourceFileScope;
-
-@Deprecated
-public class ImportFromSamePackageRule extends AbstractJavaRule {
-
- @Override
- public Object visit(ASTImportDeclaration importDecl, Object data) {
- String packageName = importDecl.getScope().getEnclosingScope(SourceFileScope.class).getPackageName();
-
- if (packageName != null && packageName.equals(importDecl.getPackageName())) {
- addViolation(data, importDecl);
- }
-
- // special case
- if (packageName == null && StringUtils.isBlank(importDecl.getPackageName())) {
- addViolation(data, importDecl);
- }
- return data;
- }
-}
diff --git a/pmd-java/src/main/resources/category/java/bestpractices.xml b/pmd-java/src/main/resources/category/java/bestpractices.xml
index f5a012eba4..5da98c4f20 100644
--- a/pmd-java/src/main/resources/category/java/bestpractices.xml
+++ b/pmd-java/src/main/resources/category/java/bestpractices.xml
@@ -1412,32 +1412,6 @@ public class Foo {
-
-
-Reports import statements that are not used within the file. This also reports
-duplicate imports, and imports from the same package. The simplest fix is just
-to delete those imports.
-
-This rule is deprecated since PMD 6.34.0. Use the rule {% rule "java/codestyle/UnnecessaryImport" %}
-from category codestyle instead.
-
- 4
-
-
-
-
-
-
-
-Avoid importing anything from the package 'java.lang'. These classes are automatically imported (JLS 7.5.3).
-
-This rule is deprecated since PMD 6.34.0. Use the rule {% rule "java/codestyle/UnnecessaryImport" %}
-from category codestyle instead.
-
- 4
-
-
-
-
-
-
-
-
-
-
-
-
-
-Duplicate or overlapping import statements should be avoided.
-
-This rule is deprecated since PMD 6.34.0. Use the rule {% rule "java/codestyle/UnnecessaryImport" %}
-from category codestyle instead.
-
- 4
-
-
-
-
-
-
-
-There is no need to import a type that lives in the same package.
-
-This rule is deprecated since PMD 6.34.0. Use the rule {% rule "java/codestyle/UnnecessaryImport" %}
-from category codestyle instead.
-
- 3
-
-
-
-
-
-
+
-
+
-
-
+
+
diff --git a/pmd-java/src/main/resources/rulesets/java/typeresolution.xml b/pmd-java/src/main/resources/rulesets/java/typeresolution.xml
index c10136bd72..5e84da61b8 100644
--- a/pmd-java/src/main/resources/rulesets/java/typeresolution.xml
+++ b/pmd-java/src/main/resources/rulesets/java/typeresolution.xml
@@ -12,7 +12,7 @@ directly and don't use this ruleset anymore.
-
+
diff --git a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/UnusedImportsTest.java b/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/UnusedImportsTest.java
deleted file mode 100644
index 5ab74f8089..0000000000
--- a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/UnusedImportsTest.java
+++ /dev/null
@@ -1,12 +0,0 @@
-/**
- * BSD-style license; for more info see http://pmd.sourceforge.net/license.html
- */
-
-package net.sourceforge.pmd.lang.java.rule.bestpractices;
-
-import net.sourceforge.pmd.testframework.PmdRuleTst;
-
-@org.junit.Ignore("Rule has not been updated yet")
-public class UnusedImportsTest extends PmdRuleTst {
- // no additional unit tests
-}
diff --git a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/DontImportJavaLangTest.java b/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/DontImportJavaLangTest.java
deleted file mode 100644
index 5c0060bcba..0000000000
--- a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/DontImportJavaLangTest.java
+++ /dev/null
@@ -1,11 +0,0 @@
-/**
- * BSD-style license; for more info see http://pmd.sourceforge.net/license.html
- */
-
-package net.sourceforge.pmd.lang.java.rule.codestyle;
-
-import net.sourceforge.pmd.testframework.PmdRuleTst;
-
-public class DontImportJavaLangTest extends PmdRuleTst {
- // no additional unit tests
-}
diff --git a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/DuplicateImportsTest.java b/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/DuplicateImportsTest.java
deleted file mode 100644
index f0d88fa6a0..0000000000
--- a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/DuplicateImportsTest.java
+++ /dev/null
@@ -1,24 +0,0 @@
-/**
- * BSD-style license; for more info see http://pmd.sourceforge.net/license.html
- */
-
-package net.sourceforge.pmd.lang.java.rule.codestyle;
-
-import net.sourceforge.pmd.testframework.PmdRuleTst;
-
-@org.junit.Ignore("Rule has not been updated yet")
-public class DuplicateImportsTest extends PmdRuleTst {
- /**
- * This is just for testing DuplicateImports for static imports and
- * disambiguation.
- */
- // Do not delete this method, its needed for a test case
- // see:
- // /pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/codestyle/xml/DuplicateImports.xml
- // #1306 False positive on duplicate when using static imports
- public static void assertTrue(String message, boolean condition) {
- if (!condition) {
- System.out.println(message);
- }
- }
-}
diff --git a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/ClassWithConstants.java b/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/ClassWithConstants.java
similarity index 83%
rename from pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/ClassWithConstants.java
rename to pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/ClassWithConstants.java
index 5938d2aa0a..0c845f84d5 100644
--- a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/ClassWithConstants.java
+++ b/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/ClassWithConstants.java
@@ -1,8 +1,8 @@
-/**
+/*
* BSD-style license; for more info see http://pmd.sourceforge.net/license.html
*/
-package net.sourceforge.pmd.lang.java.rule.bestpractices.unusedimports;
+package net.sourceforge.pmd.lang.java.rule.codestyle.unnecessaryimport;
import java.util.Arrays;
import java.util.List;
diff --git a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/ClassWithStringConstants.java b/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/ClassWithStringConstants.java
similarity index 79%
rename from pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/ClassWithStringConstants.java
rename to pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/ClassWithStringConstants.java
index 329b6059b3..7401c9cec2 100644
--- a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/ClassWithStringConstants.java
+++ b/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/ClassWithStringConstants.java
@@ -1,8 +1,8 @@
-/**
+/*
* BSD-style license; for more info see http://pmd.sourceforge.net/license.html
*/
-package net.sourceforge.pmd.lang.java.rule.bestpractices.unusedimports;
+package net.sourceforge.pmd.lang.java.rule.codestyle.unnecessaryimport;
public class ClassWithStringConstants {
diff --git a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/Hello.java b/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/Hello.java
similarity index 70%
rename from pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/Hello.java
rename to pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/Hello.java
index b5332b2b99..1352a84af5 100644
--- a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/Hello.java
+++ b/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/Hello.java
@@ -2,7 +2,7 @@
* BSD-style license; for more info see http://pmd.sourceforge.net/license.html
*/
-package net.sourceforge.pmd.lang.java.rule.bestpractices.unusedimports;
+package net.sourceforge.pmd.lang.java.rule.codestyle.unnecessaryimport;
abstract class Hello {
diff --git a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/HelloMore.java b/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/HelloMore.java
similarity index 65%
rename from pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/HelloMore.java
rename to pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/HelloMore.java
index a182d08a43..c638419c9f 100644
--- a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/HelloMore.java
+++ b/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/HelloMore.java
@@ -2,7 +2,7 @@
* BSD-style license; for more info see http://pmd.sourceforge.net/license.html
*/
-package net.sourceforge.pmd.lang.java.rule.bestpractices.unusedimports;
+package net.sourceforge.pmd.lang.java.rule.codestyle.unnecessaryimport;
class HelloMore extends Hello {
// ...
diff --git a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/Issue2016.java b/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/Issue2016.java
similarity index 82%
rename from pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/Issue2016.java
rename to pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/Issue2016.java
index c2e40c93d6..fbf7fac4e6 100644
--- a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/Issue2016.java
+++ b/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/Issue2016.java
@@ -1,8 +1,8 @@
-/**
+/*
* BSD-style license; for more info see http://pmd.sourceforge.net/license.html
*/
-package net.sourceforge.pmd.lang.java.rule.bestpractices.unusedimports;
+package net.sourceforge.pmd.lang.java.rule.codestyle.unnecessaryimport;
import java.util.Objects;
diff --git a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/PackagePrivateUtils.java b/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/PackagePrivateUtils.java
similarity index 81%
rename from pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/PackagePrivateUtils.java
rename to pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/PackagePrivateUtils.java
index b9dee82b8c..bc8bd167ea 100644
--- a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/PackagePrivateUtils.java
+++ b/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/PackagePrivateUtils.java
@@ -1,8 +1,8 @@
-/**
+/*
* BSD-style license; for more info see http://pmd.sourceforge.net/license.html
*/
-package net.sourceforge.pmd.lang.java.rule.bestpractices.unusedimports;
+package net.sourceforge.pmd.lang.java.rule.codestyle.unnecessaryimport;
final class PackagePrivateUtils {
private PackagePrivateUtils() {
diff --git a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/PublicUtils.java b/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/PublicUtils.java
similarity index 81%
rename from pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/PublicUtils.java
rename to pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/PublicUtils.java
index 003aeae7a3..aa2ce71003 100644
--- a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/bestpractices/unusedimports/PublicUtils.java
+++ b/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/codestyle/unnecessaryimport/PublicUtils.java
@@ -1,8 +1,8 @@
-/**
+/*
* BSD-style license; for more info see http://pmd.sourceforge.net/license.html
*/
-package net.sourceforge.pmd.lang.java.rule.bestpractices.unusedimports;
+package net.sourceforge.pmd.lang.java.rule.codestyle.unnecessaryimport;
public class PublicUtils {
private PublicUtils() {
diff --git a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/errorprone/ImportFromSamePackageTest.java b/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/errorprone/ImportFromSamePackageTest.java
deleted file mode 100644
index 96ea8ba174..0000000000
--- a/pmd-java/src/test/java/net/sourceforge/pmd/lang/java/rule/errorprone/ImportFromSamePackageTest.java
+++ /dev/null
@@ -1,12 +0,0 @@
-/**
- * BSD-style license; for more info see http://pmd.sourceforge.net/license.html
- */
-
-package net.sourceforge.pmd.lang.java.rule.errorprone;
-
-import net.sourceforge.pmd.testframework.PmdRuleTst;
-
-@org.junit.Ignore("Rule has not been updated yet")
-public class ImportFromSamePackageTest extends PmdRuleTst {
- // no additional unit tests
-}
diff --git a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/bestpractices/xml/UnusedImports.xml b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/bestpractices/xml/UnusedImports.xml
deleted file mode 100644
index eee38f82fd..0000000000
--- a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/bestpractices/xml/UnusedImports.xml
+++ /dev/null
@@ -1,584 +0,0 @@
-
-
-
-
- simple unused single type import
- 1
-
-
-
-
- one used single type import
- 0
-
-
-
-
- 2 unused single-type imports
- 2
-
-
-
-
- 1 used single type import
- 0
-
-
-
-
- 1 import stmt, used only in throws clause
- 0
-
-
-
-
- for loop
- 0
-
-
-
-
- Generics
- 0
- x = new ArrayList();
-}
- ]]>
-
-
-
- Generics 2
- 0
- x = new ArrayList();
-}
- ]]>
-
-
-
- Annotations
- 0
-
-
-
-
- Annotations 2
- 0
-
-
-
-
- import from default package
- 0
-
-
-
-
- import from default package
- 1
-
-
-
-
- Used static import
- 0
-
-
-
-
- Unused static import
- 1
-
-
-
-
- On demand import
- 0
-
-
-
-
- imports used in javadoc comment, see also bug #254
- 0
-
-
-
-
- #1280 False Positive in UnusedImports when import used in javadoc
- 0
-
-
-
-
- #1720 False Positive in UnusedImports for Javadoc link with array type
- 0
-
-
-
-
- Bug 2606609 : False "UnusedImports" positive in package-info.java
- 0
-
-
-
-
- bug #254 False+ : UnusedImport with Javadoc @link
- 0
-
-
-
-
- #1181 unused import false positive if used as parameter in javadoc only.
- 0
-
-
-
-
- #1280 False Positive in UnusedImports when import used in javadoc
- 0
-
-
-
-
- #914 False +ve from UnusedImports with wildcard static imports
- 0
-
-
-
-
- #1465 False Positve UnusedImports with javadoc @link
- 0
-
- * An agent is active if it has not posted a {@link AgentStateChangeEvent} containing {@link AgentState#TERMINATED}.
- *
- * @return agent handles.
- * @see OtherState#TERMINATED
- */
- Iterable getAgentHandles();
-}
- ]]>
-
-
-
- #1547 False Positve UnusedImports with javadoc for identifiers with underscores
- 0
-
-
-
-
- #348 False Positive UnusedImports with javadoc for public static inner classes of imports
- 0
-
-
-
-
- #925 [java] UnusedImports false positive for static import
- 0
-
-
-
-
- #1404 [java] UnusedImports false positive for static import
- 0
-
-
-
-
- #1209 [java] UnusedImports false positive for static import with package-private method usage
- 0
-
-
-
-
- #1625 [java] UnusedImports false positive for method parameter type in @see Javadoc
- 0
-
-
-
-
- #1720 False Positive in UnusedImports for Javadoc @see with array type
- 0
-
-
-
-
- #2025 False Positive in UnusedImports for params when using @see with FQCN
- 0
-
-
-
-
- #2025 False Positive in UnusedImports for params when using @link with FQCN
- 0
-
-
-
-
- #2016 [java] UnusedImports: False positive if wildcard is used and only static methods
- 0
-
-
-
-
- resolve ambiguous static on-demand imports (#2277)
- 0
-
-
-
-
- [java] UnusedImports with static imports on subclasses #3132
- 0
-
-
-
-
- NPE with static import on interface
- 1
-
-
-
diff --git a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/codestyle/xml/DontImportJavaLang.xml b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/codestyle/xml/DontImportJavaLang.xml
deleted file mode 100644
index 5c49393dab..0000000000
--- a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/codestyle/xml/DontImportJavaLang.xml
+++ /dev/null
@@ -1,76 +0,0 @@
-
-
-
-
- import java.lang.String
- 1
-
-
-
-
- import java.lang.*
- 1
-
-
-
-
- import java.lang.ref/reflect/annotation/instrument/management
- 0
-
-
-
-
- Static Java imports are OK
- 0
-
-
-
-
- Importing java.lang.Thread.UncaughtExceptionHandler
- 0
-
-
-
-
- import java.lang.ProcessBuilder.Redirect: #1031 false DontImportJavaLang
- 0
-
-
-
-
- import java.lang.invoke.MethodHandles: #339 false DontImportJavaLang
- 0
-
-
-
diff --git a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/codestyle/xml/DuplicateImports.xml b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/codestyle/xml/DuplicateImports.xml
deleted file mode 100644
index 66504081f2..0000000000
--- a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/codestyle/xml/DuplicateImports.xml
+++ /dev/null
@@ -1,120 +0,0 @@
-
-
-
-
- duplicate single type imports
- 1
-
-
-
-
- duplicate wildcard imports
- 1
-
-
-
-
- single type import after wildcard import
- 1
-
-
-
-
- subpackage import, ok
- 0
-
-
-
-
- 674394, disambiguation import should be allowed
- 0
-
-
-
-
- 674394, disambiguation import because of conflict with java.lang
- 0
-
-
-
-
- #1306 False positive on duplicate when using static imports
- 0
-
-
-
-
- negative case - static on-demand imports
- 1
- 2
-
-
-
-
- [java] DuplicateImports reported for the same import... and import static... #2546
- 0
-
-
-
diff --git a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/codestyle/xml/UnnecessaryImport.xml b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/codestyle/xml/UnnecessaryImport.xml
index 56d86c23cf..523da5b0e1 100644
--- a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/codestyle/xml/UnnecessaryImport.xml
+++ b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/codestyle/xml/UnnecessaryImport.xml
@@ -409,61 +409,62 @@ public class Foo {
#925 [java] UnusedImports false positive for static import
0
+ public static void main(String[] args) {
+ System.out.println("List 1: " + LIST1);
+ System.out.println("List 2: " + LIST2);
+ }
+ }
+ ]]>
#1404 [java] UnusedImports false positive for static import
0
+ public static void main(String[] args) {
+ if (CONST1.equals("a")) {
+ System.out.println("CONST1 is a");
+ }
+ }
+ }
+ ]]>
#1209 [java] UnusedImports false positive for static import with package-private method usage
0
+ public class Imports {
+
+ int importtest() {
+ int i = 0;
+ i = f1(i);
+ i = g1(i);
+ i = f2(i);
+ i = g2(i);
+ i = f3(i);
+ i = g3(i);
+ return i;
+ }
+ }
+ ]]>
diff --git a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/errorprone/xml/ImportFromSamePackage.xml b/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/errorprone/xml/ImportFromSamePackage.xml
deleted file mode 100644
index e3a0e78749..0000000000
--- a/pmd-java/src/test/resources/net/sourceforge/pmd/lang/java/rule/errorprone/xml/ImportFromSamePackage.xml
+++ /dev/null
@@ -1,74 +0,0 @@
-
-
-
-
- simple failure
- 1
-
-
-
-
- class in default package importing from sub package
- 0
-
-
-
-
- class in default package importing from other package
- 0
-
-
-
-
- class not in default package importing from default package
- 0
-
-
-
-
- class in default package importing from default package
- 1
-
-
-
-
- importing from subpackage
- 0
-
-
-
-
- importing all from same package
- 1
-
-
-