[FLINK-33361][connectors/kafka] Add Java 17 compatibility to Flink Kafka connector
diff --git a/.github/workflows/push_pr.yml b/.github/workflows/push_pr.yml
index 8f53a5b..099a181 100644
--- a/.github/workflows/push_pr.yml
+++ b/.github/workflows/push_pr.yml
@@ -26,10 +26,14 @@
strategy:
matrix:
flink: [ 1.17.1, 1.18.0 ]
+ jdk: [ 8, 11, 17 ]
+ exclude:
+ - jdk: 17
+ flink: 1.17.1
uses: apache/flink-connector-shared-utils/.github/workflows/ci.yml@ci_utils
with:
flink_version: ${{ matrix.flink }}
-
+ jdk_version: ${{ matrix.jdk }}
python_test:
strategy:
matrix:
diff --git a/flink-connector-kafka/pom.xml b/flink-connector-kafka/pom.xml
index 7c549fd..470f5da 100644
--- a/flink-connector-kafka/pom.xml
+++ b/flink-connector-kafka/pom.xml
@@ -34,6 +34,14 @@
<packaging>jar</packaging>
+ <properties>
+ <flink.connector.module.config><!--
+ FlinkKafkaProducerBaseTest --> --add-opens=java.base/java.lang=ALL-UNNAMED <!--
+ FlinkKafkaProducerBaseTest --> --add-opens=java.base/java.util.concurrent.locks=ALL-UNNAMED <!--
+ FlinkKafkaConsumerBaseTest --> --add-opens=java.base/java.util=ALL-UNNAMED <!--
+ KafkaProducerExactlyOnceITCase --> --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED </flink.connector.module.config>
+ </properties>
+
<dependencies>
<!-- Core -->
diff --git a/pom.xml b/pom.xml
index d4cd255..b70e98c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -78,6 +78,13 @@
<log4j.version>2.17.1</log4j.version>
<flink.parent.artifactId>flink-connector-kafka-parent</flink.parent.artifactId>
+
+ <!-- This property should contain the add-opens/add-exports commands required for the tests
+ in the given connector's module to pass.
+ It MUST be a space-separated list not containing any newlines,
+ of entries in the form '[-]{2}add-[opens|exports]=<module>/<package>=ALL-UNNAMED'.-->
+ <flink.connector.module.config/>
+ <flink.surefire.baseArgLine>-XX:+UseG1GC -Xms256m -XX:+IgnoreUnrecognizedVMOptions ${flink.connector.module.config}</flink.surefire.baseArgLine>
</properties>
<dependencies>