diff --git a/docs/pages/release_notes.md b/docs/pages/release_notes.md
index 7c00ac8e22..093c179208 100644
--- a/docs/pages/release_notes.md
+++ b/docs/pages/release_notes.md
@@ -338,6 +338,9 @@ in the migration guide for details.
* {%jdoc lang-test::lang.test.cpd.CpdTextComparisonTest %} (moved from `net.sourceforge.pmd.cpd.test.CpdTextComparisonTest`)
* {%jdoc lang-test::lang.test.ast.BaseTreeDumpTest %} (moved from `net.sourceforge.pmd.lang.ast.test.BaseTreeDumpTest`)
* Any many other types have been moved from `net.sourceforge.pmd.lang.ast.test` to `net.sourceforge.pmd.lang.test`.
+* pmd-scala
+ * {%jdoc scala::lang.scala.cpd.ScalaCpdLexer %} (moved from `net.sourceforge.pmd.lang.scala.cpd.ScalaCpdLexer`)
+ * {%jdoc scala::lang.scala.cpd.ScalaTokenAdapter %} (moved from `net.sourceforge.pmd.lang.scala.cpd.ScalaTokenAdapter`)
**Internalized classes and interfaces and methods**
@@ -668,6 +671,7 @@ The annotation `@DeprecatedUntil700` has been removed.
* {%jdoc !!plsql::lang.plsql.ast.PLSQLNode %} - method `jjtAccept()` has been removed.
Use {%jdoc core::lang.ast.Node#acceptVisitor(core::lang.ast.AstVisitor,P) %} instead.
* pmd-scala
+ * The maven module `pmd-scala` has been removed. Use `pmd-scala_2.13` or `pmd-scala_2.12` instead.
* {%jdoc !!scala::lang.scala.ast.ScalaNode %}
* Method `accept()` has been removed. Use {%jdoc core::lang.ast.Node#acceptVisitor(core::lang.ast.AstVisitor,P) %} instead.
* Method `getNode()` has been removed. The underlying node is only available in AST nodes, but not in rule implementations.
diff --git a/pmd-scala-modules/pmd-scala-common/src/main/java/net/sourceforge/pmd/lang/scala/ScalaLanguageModule.java b/pmd-scala-modules/pmd-scala-common/src/main/java/net/sourceforge/pmd/lang/scala/ScalaLanguageModule.java
index 6268b5ad95..2df08f131b 100644
--- a/pmd-scala-modules/pmd-scala-common/src/main/java/net/sourceforge/pmd/lang/scala/ScalaLanguageModule.java
+++ b/pmd-scala-modules/pmd-scala-common/src/main/java/net/sourceforge/pmd/lang/scala/ScalaLanguageModule.java
@@ -5,7 +5,7 @@
package net.sourceforge.pmd.lang.scala;
import net.sourceforge.pmd.cpd.CpdLexer;
-import net.sourceforge.pmd.cpd.ScalaCpdLexer;
+import net.sourceforge.pmd.lang.scala.cpd.ScalaCpdLexer;
import net.sourceforge.pmd.lang.LanguagePropertyBundle;
import net.sourceforge.pmd.lang.LanguageRegistry;
import net.sourceforge.pmd.lang.impl.SimpleLanguageModuleBase;
diff --git a/pmd-scala-modules/pmd-scala-common/src/main/java/net/sourceforge/pmd/cpd/ScalaCpdLexer.java b/pmd-scala-modules/pmd-scala-common/src/main/java/net/sourceforge/pmd/lang/scala/cpd/ScalaCpdLexer.java
similarity index 97%
rename from pmd-scala-modules/pmd-scala-common/src/main/java/net/sourceforge/pmd/cpd/ScalaCpdLexer.java
rename to pmd-scala-modules/pmd-scala-common/src/main/java/net/sourceforge/pmd/lang/scala/cpd/ScalaCpdLexer.java
index 4ee8f45f18..5e4ea36e4d 100644
--- a/pmd-scala-modules/pmd-scala-common/src/main/java/net/sourceforge/pmd/cpd/ScalaCpdLexer.java
+++ b/pmd-scala-modules/pmd-scala-common/src/main/java/net/sourceforge/pmd/lang/scala/cpd/ScalaCpdLexer.java
@@ -2,10 +2,12 @@
* BSD-style license; for more info see http://pmd.sourceforge.net/license.html
*/
-package net.sourceforge.pmd.cpd;
+package net.sourceforge.pmd.lang.scala.cpd;
import org.apache.commons.lang3.StringUtils;
+import net.sourceforge.pmd.cpd.CpdLexer;
+import net.sourceforge.pmd.cpd.TokenFactory;
import net.sourceforge.pmd.cpd.impl.BaseTokenFilter;
import net.sourceforge.pmd.lang.LanguagePropertyBundle;
import net.sourceforge.pmd.lang.LanguageVersion;
diff --git a/pmd-scala-modules/pmd-scala-common/src/main/java/net/sourceforge/pmd/cpd/ScalaTokenAdapter.java b/pmd-scala-modules/pmd-scala-common/src/main/java/net/sourceforge/pmd/lang/scala/cpd/ScalaTokenAdapter.java
similarity index 97%
rename from pmd-scala-modules/pmd-scala-common/src/main/java/net/sourceforge/pmd/cpd/ScalaTokenAdapter.java
rename to pmd-scala-modules/pmd-scala-common/src/main/java/net/sourceforge/pmd/lang/scala/cpd/ScalaTokenAdapter.java
index 3609cd8efb..828b8bd4d1 100644
--- a/pmd-scala-modules/pmd-scala-common/src/main/java/net/sourceforge/pmd/cpd/ScalaTokenAdapter.java
+++ b/pmd-scala-modules/pmd-scala-common/src/main/java/net/sourceforge/pmd/lang/scala/cpd/ScalaTokenAdapter.java
@@ -2,7 +2,7 @@
* BSD-style license; for more info see http://pmd.sourceforge.net/license.html
*/
-package net.sourceforge.pmd.cpd;
+package net.sourceforge.pmd.lang.scala.cpd;
import net.sourceforge.pmd.lang.ast.GenericToken;
import net.sourceforge.pmd.lang.document.Chars;
diff --git a/pmd-scala-modules/pmd-scala-common/src/test/java/net/sourceforge/pmd/cpd/ScalaCpdLexerTest.java b/pmd-scala-modules/pmd-scala-common/src/test/java/net/sourceforge/pmd/lang/scala/cpd/ScalaCpdLexerTest.java
similarity index 86%
rename from pmd-scala-modules/pmd-scala-common/src/test/java/net/sourceforge/pmd/cpd/ScalaCpdLexerTest.java
rename to pmd-scala-modules/pmd-scala-common/src/test/java/net/sourceforge/pmd/lang/scala/cpd/ScalaCpdLexerTest.java
index 709001e821..57056e6355 100644
--- a/pmd-scala-modules/pmd-scala-common/src/test/java/net/sourceforge/pmd/cpd/ScalaCpdLexerTest.java
+++ b/pmd-scala-modules/pmd-scala-common/src/test/java/net/sourceforge/pmd/lang/scala/cpd/ScalaCpdLexerTest.java
@@ -2,15 +2,15 @@
* BSD-style license; for more info see http://pmd.sourceforge.net/license.html
*/
-package net.sourceforge.pmd.cpd;
+package net.sourceforge.pmd.lang.scala.cpd;
import static org.junit.jupiter.api.Assertions.assertThrows;
import org.junit.jupiter.api.Test;
-import net.sourceforge.pmd.lang.test.cpd.CpdTextComparisonTest;
import net.sourceforge.pmd.lang.ast.LexException;
import net.sourceforge.pmd.lang.scala.ScalaLanguageModule;
+import net.sourceforge.pmd.lang.test.cpd.CpdTextComparisonTest;
class ScalaCpdLexerTest extends CpdTextComparisonTest {
@@ -18,11 +18,6 @@ class ScalaCpdLexerTest extends CpdTextComparisonTest {
super(ScalaLanguageModule.getInstance(), ".scala");
}
- @Override
- protected String getResourcePrefix() {
- return "../lang/scala/cpd/testdata";
- }
-
@Test
void testSample() {
doTest("sample-LiftActor");
diff --git a/pmd-scala/pom.xml b/pmd-scala/pom.xml
deleted file mode 100644
index f61d17c8ae..0000000000
--- a/pmd-scala/pom.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
- 4.0.0
- pmd-scala
- PMD Scala - Transitional package (deprecated)
- This is deprecated, use pmd-scala_2.13 directly
- pom
-
-
- net.sourceforge.pmd
- pmd
- 7.0.0-SNAPSHOT
- ../pom.xml
-
-
-
-
- ${project.groupId}
- pmd-scala_2.13
- ${project.version}
-
-
-
diff --git a/pom.xml b/pom.xml
index 6ec5b87af0..e37389959f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1275,7 +1275,6 @@
pmd-plsql
pmd-python
pmd-ruby
- pmd-scala
pmd-scala-modules/pmd-scala-common
pmd-scala-modules/pmd-scala_2.13
pmd-scala-modules/pmd-scala_2.12