diff --git a/flink-connectors/flink-connector-cassandra/pom.xml b/flink-connectors/flink-connector-cassandra/pom.xml
index ea4c09e08e2b7..b2908217df9d3 100644
--- a/flink-connectors/flink-connector-cassandra/pom.xml
+++ b/flink-connectors/flink-connector-cassandra/pom.xml
@@ -164,14 +164,6 @@ under the License.
provided
true
-
-
- org.apache.flink
- flink-table-planner_${scala.binary.version}
- ${project.version}
- provided
- true
-
@@ -201,6 +193,12 @@ under the License.
${project.version}
test
+
+ org.apache.flink
+ flink-table-planner_${scala.binary.version}
+ ${project.version}
+ test
+
org.testcontainers
cassandra
diff --git a/flink-connectors/flink-connector-hive/pom.xml b/flink-connectors/flink-connector-hive/pom.xml
index 73581d27bf8a8..28db2b0cc31cc 100644
--- a/flink-connectors/flink-connector-hive/pom.xml
+++ b/flink-connectors/flink-connector-hive/pom.xml
@@ -888,6 +888,23 @@ under the License.
+
+ org.apache.maven.plugins
+ maven-enforcer-plugin
+
+
+ forbid-direct-table-planner-dependencies
+
+ enforce
+
+
+
+ true
+
+
+
+
+
org.antlr
antlr3-maven-plugin
diff --git a/flink-dist/pom.xml b/flink-dist/pom.xml
index c28ad60fc3d44..44e81fb569853 100644
--- a/flink-dist/pom.xml
+++ b/flink-dist/pom.xml
@@ -586,6 +586,16 @@ under the License.
true
+
+ forbid-direct-table-planner-dependencies
+
+ enforce
+
+
+
+ true
+
+
diff --git a/flink-examples/flink-examples-table/pom.xml b/flink-examples/flink-examples-table/pom.xml
index 21b7a921530de..1c09ec52ad1b4 100644
--- a/flink-examples/flink-examples-table/pom.xml
+++ b/flink-examples/flink-examples-table/pom.xml
@@ -97,6 +97,23 @@ under the License.
+
+ org.apache.maven.plugins
+ maven-enforcer-plugin
+
+
+ forbid-direct-table-planner-dependencies
+
+ enforce
+
+
+
+ true
+
+
+
+
+
org.apache.maven.plugins
diff --git a/flink-table/flink-table-planner-loader-bundle/pom.xml b/flink-table/flink-table-planner-loader-bundle/pom.xml
index a2a575517ac7e..5df0d1284fbc0 100644
--- a/flink-table/flink-table-planner-loader-bundle/pom.xml
+++ b/flink-table/flink-table-planner-loader-bundle/pom.xml
@@ -31,9 +31,9 @@
flink-table-planner-loader-bundle
- Flink : Table : Planner Loader Helper
+ Flink : Table : Planner Loader Bundle
jar
- Intermediate build artifact use by the planner-loader.
+ Intermediate build artifact used by the flink-table-planner-loader.
@@ -46,6 +46,22 @@
+
+ org.apache.maven.plugins
+ maven-enforcer-plugin
+
+
+ forbid-direct-table-planner-dependencies
+
+ enforce
+
+
+ true
+
+
+
+
+
org.apache.maven.plugins
maven-deploy-plugin
diff --git a/pom.xml b/pom.xml
index c74661b643485..9840842f69b42 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1744,6 +1744,28 @@ under the License.
+
+ forbid-direct-table-planner-dependencies
+
+ enforce
+
+
+
+
+
+ org.apache.flink:flink-table-planner_${scala.binary.version}
+
+
+ org.apache.flink:flink-table-planner_${scala.binary.version}:*:*:test
+
+
+ Direct dependencies on flink-table-planner are not allowed.
+ You should depend on either Table API modules or flink-table-planner-loader.
+
+
+
+
+
dependency-convergence