This is an automated email from the ASF dual-hosted git repository.

chesnay pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/flink.git

commit 49dcdf0fc2a5f113c0c1558b65df4ffa587ff72a
Author: Chesnay Schepler <ches...@apache.org>
AuthorDate: Thu Jun 16 12:22:08 2022 +0200

    [FLINK-28203][build] Mark bundled dependencies as optional
---
 flink-connectors/flink-connector-files/pom.xml     |  1 +
 flink-connectors/flink-connector-hive/pom.xml      |  6 ++++
 .../flink-sql-connector-hbase-1.4/pom.xml          |  1 +
 .../flink-sql-connector-hbase-2.2/pom.xml          |  1 +
 .../flink-sql-connector-hive-2.3.9/pom.xml         |  3 ++
 .../flink-sql-connector-hive-3.1.3/pom.xml         |  6 ++++
 flink-connectors/flink-sql-connector-kafka/pom.xml |  1 +
 flink-dist-scala/pom.xml                           |  2 ++
 flink-dist/pom.xml                                 | 34 ++++++++++++++++++++++
 .../flink-examples-streaming-state-machine/pom.xml |  1 +
 flink-filesystems/flink-azure-fs-hadoop/pom.xml    |  3 ++
 flink-filesystems/flink-fs-hadoop-shaded/pom.xml   |  1 +
 flink-filesystems/flink-gs-fs-hadoop/pom.xml       |  4 +++
 flink-filesystems/flink-oss-fs-hadoop/pom.xml      |  4 +++
 flink-filesystems/flink-s3-fs-hadoop/pom.xml       |  1 +
 flink-filesystems/flink-s3-fs-presto/pom.xml       | 20 ++++++++-----
 flink-formats/flink-csv/pom.xml                    |  1 +
 flink-formats/flink-json/pom.xml                   |  1 +
 .../flink-sql-avro-confluent-registry/pom.xml      |  1 +
 flink-formats/flink-sql-avro/pom.xml               |  1 +
 flink-formats/flink-sql-csv/pom.xml                |  1 +
 flink-formats/flink-sql-json/pom.xml               |  1 +
 flink-formats/flink-sql-orc/pom.xml                |  1 +
 flink-formats/flink-sql-parquet/pom.xml            |  2 ++
 flink-formats/flink-sql-protobuf/pom.xml           |  1 +
 flink-kubernetes/pom.xml                           |  1 +
 flink-metrics/flink-metrics-datadog/pom.xml        |  1 +
 flink-metrics/flink-metrics-graphite/pom.xml       |  3 ++
 flink-metrics/flink-metrics-influxdb/pom.xml       |  1 +
 flink-metrics/flink-metrics-prometheus/pom.xml     |  3 ++
 flink-python/pom.xml                               |  8 +++++
 flink-rpc/flink-rpc-akka/pom.xml                   |  6 ++++
 flink-runtime/pom.xml                              |  1 +
 flink-table/flink-sql-client/pom.xml               |  3 ++
 flink-table/flink-sql-gateway/pom.xml              |  1 +
 flink-table/flink-sql-jdbc-driver-bundle/pom.xml   |  7 +++++
 flink-table/flink-table-api-java-uber/pom.xml      |  5 ++++
 flink-table/flink-table-code-splitter/pom.xml      |  1 +
 .../flink-table-planner-loader-bundle/pom.xml      |  1 +
 flink-table/flink-table-planner/pom.xml            |  4 +++
 flink-table/flink-table-runtime/pom.xml            |  4 +++
 pom.xml                                            | 16 ++++++++++
 42 files changed, 158 insertions(+), 7 deletions(-)

diff --git a/flink-connectors/flink-connector-files/pom.xml 
b/flink-connectors/flink-connector-files/pom.xml
index d82646e0af8..22931f20945 100644
--- a/flink-connectors/flink-connector-files/pom.xml
+++ b/flink-connectors/flink-connector-files/pom.xml
@@ -55,6 +55,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-connector-base</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
diff --git a/flink-connectors/flink-connector-hive/pom.xml 
b/flink-connectors/flink-connector-hive/pom.xml
index 80011b55b97..5a5df8fd3c4 100644
--- a/flink-connectors/flink-connector-hive/pom.xml
+++ b/flink-connectors/flink-connector-hive/pom.xml
@@ -232,12 +232,14 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        
<artifactId>flink-hadoop-compatibility_${scala.binary.version}</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-hadoop-bulk</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
@@ -252,6 +254,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-orc</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <exclusion>
                                        <groupId>org.apache.orc</groupId>
@@ -264,6 +267,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-orc-nohive</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <exclusion>
                                        <groupId>org.apache.orc</groupId>
@@ -276,6 +280,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-parquet</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- File systems -->
@@ -284,6 +289,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-hadoop-fs</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- Hadoop -->
diff --git a/flink-connectors/flink-sql-connector-hbase-1.4/pom.xml 
b/flink-connectors/flink-sql-connector-hbase-1.4/pom.xml
index 6a39a9136a3..effb92f0807 100644
--- a/flink-connectors/flink-sql-connector-hbase-1.4/pom.xml
+++ b/flink-connectors/flink-sql-connector-hbase-1.4/pom.xml
@@ -41,6 +41,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-connector-hbase-1.4</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
        </dependencies>
 
diff --git a/flink-connectors/flink-sql-connector-hbase-2.2/pom.xml 
b/flink-connectors/flink-sql-connector-hbase-2.2/pom.xml
index d0722a57fde..fb29cc28674 100644
--- a/flink-connectors/flink-sql-connector-hbase-2.2/pom.xml
+++ b/flink-connectors/flink-sql-connector-hbase-2.2/pom.xml
@@ -41,6 +41,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-connector-hbase-2.2</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
        </dependencies>
 
diff --git a/flink-connectors/flink-sql-connector-hive-2.3.9/pom.xml 
b/flink-connectors/flink-sql-connector-hive-2.3.9/pom.xml
index a8135e0a818..ed986f6d150 100644
--- a/flink-connectors/flink-sql-connector-hive-2.3.9/pom.xml
+++ b/flink-connectors/flink-sql-connector-hive-2.3.9/pom.xml
@@ -43,12 +43,14 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        
<artifactId>flink-connector-hive_${scala.binary.version}</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.apache.hive</groupId>
                        <artifactId>hive-exec</artifactId>
                        <version>2.3.9</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <exclusion>
                                        <groupId>log4j</groupId>
@@ -82,6 +84,7 @@ under the License.
                        <groupId>org.antlr</groupId>
                        <artifactId>antlr-runtime</artifactId>
                        <version>3.5.2</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
        </dependencies>
 
diff --git a/flink-connectors/flink-sql-connector-hive-3.1.3/pom.xml 
b/flink-connectors/flink-sql-connector-hive-3.1.3/pom.xml
index e7d932d2d2c..4b8280cf839 100644
--- a/flink-connectors/flink-sql-connector-hive-3.1.3/pom.xml
+++ b/flink-connectors/flink-sql-connector-hive-3.1.3/pom.xml
@@ -43,12 +43,14 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        
<artifactId>flink-connector-hive_${scala.binary.version}</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.apache.hive</groupId>
                        <artifactId>hive-exec</artifactId>
                        <version>3.1.3</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <exclusion>
                                        <groupId>log4j</groupId>
@@ -82,6 +84,7 @@ under the License.
                        <groupId>org.antlr</groupId>
                        <artifactId>antlr-runtime</artifactId>
                        <version>3.5.2</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- hadoop dependency to make the copied code compile -->
@@ -122,6 +125,7 @@ under the License.
                        <groupId>org.apache.thrift</groupId>
                        <artifactId>libfb303</artifactId>
                        <version>0.9.3</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- avro is included in hive-exec. we use the same 
dependencies but with a different version -->
@@ -129,6 +133,7 @@ under the License.
                        <groupId>org.apache.avro</groupId>
                        <artifactId>avro</artifactId>
                        <version>1.8.2</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
@@ -136,6 +141,7 @@ under the License.
                        <artifactId>avro-mapred</artifactId>
                        <classifier>hadoop2</classifier>
                        <version>1.8.2</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <exclusion>
                                        <groupId>org.mortbay.jetty</groupId>
diff --git a/flink-connectors/flink-sql-connector-kafka/pom.xml 
b/flink-connectors/flink-sql-connector-kafka/pom.xml
index a8768a61907..edfdb6717c9 100644
--- a/flink-connectors/flink-sql-connector-kafka/pom.xml
+++ b/flink-connectors/flink-sql-connector-kafka/pom.xml
@@ -43,6 +43,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-connector-kafka</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
                <dependency>
                        <groupId>org.apache.flink</groupId>
diff --git a/flink-dist-scala/pom.xml b/flink-dist-scala/pom.xml
index a01a23a08d2..d6bec0c71c4 100644
--- a/flink-dist-scala/pom.xml
+++ b/flink-dist-scala/pom.xml
@@ -40,6 +40,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        
<artifactId>flink-scala_${scala.binary.version}</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <exclusion>
                                        <!-- transitive Flink dependencies are 
provided at runtime -->
@@ -52,6 +53,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        
<artifactId>flink-streaming-scala_${scala.binary.version}</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <exclusion>
                                        <!-- transitive Flink dependencies are 
provided at runtime -->
diff --git a/flink-dist/pom.xml b/flink-dist/pom.xml
index 89b80f1a5f4..84219b323e7 100644
--- a/flink-dist/pom.xml
+++ b/flink-dist/pom.xml
@@ -51,84 +51,98 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-core</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-java</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-runtime</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-runtime-web</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-optimizer</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-clients</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-streaming-java</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-metrics-core</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-container</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-statebackend-rocksdb</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-statebackend-changelog</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
         <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-dstl-dfs</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
         </dependency>
 
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-kubernetes</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-yarn</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <exclusion>
                                        <groupId>org.apache.hadoop</groupId>
@@ -141,6 +155,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-connector-base</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- Default file system support. The Hadoop dependency         
           -->
@@ -150,6 +165,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-hadoop-fs</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- Concrete logging framework - we add this only here (and 
not in the 
@@ -454,6 +470,18 @@ under the License.
                        <!-- this entry exists to prevent a compile dependency 
from slipping through -->
                        <scope>provided</scope>
                </dependency>
+               <dependency>
+                       <groupId>org.slf4j</groupId>
+                       <artifactId>slf4j-api</artifactId>
+                       <version>${slf4j.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
+               </dependency>
+               <dependency>
+                       <groupId>com.google.code.findbugs</groupId>
+                       <artifactId>jsr305</artifactId>
+                       <version>1.3.9</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
+               </dependency>
 
                <!-- test dependencies -->
 
@@ -480,6 +508,12 @@ under the License.
                                <version>${project.version}</version>
                                <scope>provided</scope>
                        </dependency>
+                       <dependency>
+                               <groupId>org.objenesis</groupId>
+                               <artifactId>objenesis</artifactId>
+                               <version>2.1</version>
+                               
<optional>${flink.markBundledAsOptional}</optional>
+                       </dependency>
                </dependencies>
        </dependencyManagement>
 
diff --git 
a/flink-examples/flink-examples-build-helper/flink-examples-streaming-state-machine/pom.xml
 
b/flink-examples/flink-examples-build-helper/flink-examples-streaming-state-machine/pom.xml
index e4780fd9edd..8b12a15c4d0 100644
--- 
a/flink-examples/flink-examples-build-helper/flink-examples-streaming-state-machine/pom.xml
+++ 
b/flink-examples/flink-examples-build-helper/flink-examples-streaming-state-machine/pom.xml
@@ -36,6 +36,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-examples-streaming</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
        </dependencies>
 
diff --git a/flink-filesystems/flink-azure-fs-hadoop/pom.xml 
b/flink-filesystems/flink-azure-fs-hadoop/pom.xml
index 51ae631a5f1..ce13333ee45 100644
--- a/flink-filesystems/flink-azure-fs-hadoop/pom.xml
+++ b/flink-filesystems/flink-azure-fs-hadoop/pom.xml
@@ -51,18 +51,21 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-hadoop-fs</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-fs-hadoop-shaded</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.apache.hadoop</groupId>
                        <artifactId>hadoop-azure</artifactId>
                        <version>${fs.hadoopshaded.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <exclusion>
                                        <groupId>org.apache.hadoop</groupId>
diff --git a/flink-filesystems/flink-fs-hadoop-shaded/pom.xml 
b/flink-filesystems/flink-fs-hadoop-shaded/pom.xml
index c4daca5e1a5..6534045bef6 100644
--- a/flink-filesystems/flink-fs-hadoop-shaded/pom.xml
+++ b/flink-filesystems/flink-fs-hadoop-shaded/pom.xml
@@ -52,6 +52,7 @@ under the License.
                        <groupId>org.apache.hadoop</groupId>
                        <artifactId>hadoop-common</artifactId>
                        <version>${fs.hadoopshaded.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <exclusion>
                                        <groupId>jdk.tools</groupId>
diff --git a/flink-filesystems/flink-gs-fs-hadoop/pom.xml 
b/flink-filesystems/flink-gs-fs-hadoop/pom.xml
index 724501fea84..2563dfd3415 100644
--- a/flink-filesystems/flink-gs-fs-hadoop/pom.xml
+++ b/flink-filesystems/flink-gs-fs-hadoop/pom.xml
@@ -53,18 +53,21 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-hadoop-fs</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-fs-hadoop-shaded</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>com.google.cloud</groupId>
                        <artifactId>google-cloud-storage</artifactId>
                        <version>${fs.gs.sdk.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <!-- the following conflict with 
flink-fs-hadoop-shaded so exclude here -->
                                <exclusion>
@@ -99,6 +102,7 @@ under the License.
                        <groupId>com.google.cloud.bigdataoss</groupId>
                        <artifactId>gcs-connector</artifactId>
                        <version>${fs.gs.connector.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <!-- the following conflict with 
flink-fs-hadoop-shaded so exclude here -->
                                <exclusion>
diff --git a/flink-filesystems/flink-oss-fs-hadoop/pom.xml 
b/flink-filesystems/flink-oss-fs-hadoop/pom.xml
index 8509fde142c..4e263e319aa 100644
--- a/flink-filesystems/flink-oss-fs-hadoop/pom.xml
+++ b/flink-filesystems/flink-oss-fs-hadoop/pom.xml
@@ -44,18 +44,21 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-hadoop-fs</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-fs-hadoop-shaded</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.apache.hadoop</groupId>
                        <artifactId>hadoop-aliyun</artifactId>
                        <version>${fs.hadoopshaded.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <exclusion>
                                        <groupId>com.aliyun.oss</groupId>
@@ -81,6 +84,7 @@ under the License.
                        <groupId>com.aliyun.oss</groupId>
                        <artifactId>aliyun-sdk-oss</artifactId>
                        <version>${fs.oss.sdk.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <exclusion>
                                        <groupId>javax.xml.bind</groupId>
diff --git a/flink-filesystems/flink-s3-fs-hadoop/pom.xml 
b/flink-filesystems/flink-s3-fs-hadoop/pom.xml
index 7be139b58bc..adcf46e5efd 100644
--- a/flink-filesystems/flink-s3-fs-hadoop/pom.xml
+++ b/flink-filesystems/flink-s3-fs-hadoop/pom.xml
@@ -74,6 +74,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-s3-fs-base</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
diff --git a/flink-filesystems/flink-s3-fs-presto/pom.xml 
b/flink-filesystems/flink-s3-fs-presto/pom.xml
index ca62c5f90d9..05cf8b8ffde 100644
--- a/flink-filesystems/flink-s3-fs-presto/pom.xml
+++ b/flink-filesystems/flink-s3-fs-presto/pom.xml
@@ -45,6 +45,14 @@ under the License.
                        <scope>provided</scope>
                </dependency>
 
+               <!-- S3 base (bundled) -->
+               <dependency>
+                       <groupId>org.apache.flink</groupId>
+                       <artifactId>flink-s3-fs-base</artifactId>
+                       <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
+               </dependency>
+
                <!-- for the HAJobRunOnPrestoS3FileSystemITCase -->
                <dependency>
                        <groupId>org.apache.flink</groupId>
@@ -89,18 +97,12 @@ under the License.
                        </exclusions>
                </dependency>
 
-               <!-- S3 base (bundled) -->
-               <dependency>
-                       <groupId>org.apache.flink</groupId>
-                       <artifactId>flink-s3-fs-base</artifactId>
-                       <version>${project.version}</version>
-               </dependency>
-
                <!-- Presto's S3 file system (bundled) -->
                <dependency>
                        <groupId>com.facebook.presto</groupId>
                        <artifactId>presto-hive</artifactId>
                        <version>${presto.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <!-- Exclude AWS dependencies which we provide 
ourselves (and in more recent versions). -->
                                <exclusion>
@@ -317,6 +319,7 @@ under the License.
                        <groupId>com.facebook.presto.hadoop</groupId>
                        <artifactId>hadoop-apache2</artifactId>
                        <version>2.7.4-9</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
@@ -352,6 +355,7 @@ under the License.
                                <groupId>org.apache.hadoop</groupId>
                                <artifactId>hadoop-common</artifactId>
                                <version>${fs.hadoopshaded.version}</version>
+                               
<optional>${flink.markBundledAsOptional}</optional>
                                <exclusions>
                                        <exclusion>
                                                <groupId>jdk.tools</groupId>
@@ -379,6 +383,7 @@ under the License.
                                <groupId>org.apache.hadoop</groupId>
                                <artifactId>hadoop-hdfs</artifactId>
                                <version>${fs.hadoopshaded.version}</version>
+                               
<optional>${flink.markBundledAsOptional}</optional>
                                <exclusions>
                                        <exclusion>
                                                <groupId>jdk.tools</groupId>
@@ -408,6 +413,7 @@ under the License.
                                <groupId>commons-beanutils</groupId>
                                <artifactId>commons-beanutils</artifactId>
                                <version>1.9.4</version>
+                               
<optional>${flink.markBundledAsOptional}</optional>
                        </dependency>
                </dependencies>
        </dependencyManagement>
diff --git a/flink-formats/flink-csv/pom.xml b/flink-formats/flink-csv/pom.xml
index 08f238b7281..6fbc6fc1469 100644
--- a/flink-formats/flink-csv/pom.xml
+++ b/flink-formats/flink-csv/pom.xml
@@ -39,6 +39,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-format-common</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- core dependencies -->
diff --git a/flink-formats/flink-json/pom.xml b/flink-formats/flink-json/pom.xml
index 686ad5df3c0..35cc4149883 100644
--- a/flink-formats/flink-json/pom.xml
+++ b/flink-formats/flink-json/pom.xml
@@ -39,6 +39,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-format-common</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- core dependencies -->
diff --git a/flink-formats/flink-sql-avro-confluent-registry/pom.xml 
b/flink-formats/flink-sql-avro-confluent-registry/pom.xml
index 10789e462f0..d625c8e20a9 100644
--- a/flink-formats/flink-sql-avro-confluent-registry/pom.xml
+++ b/flink-formats/flink-sql-avro-confluent-registry/pom.xml
@@ -49,6 +49,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-avro-confluent-registry</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
        </dependencies>
 
diff --git a/flink-formats/flink-sql-avro/pom.xml 
b/flink-formats/flink-sql-avro/pom.xml
index 7fea78b932e..3eecebeedbf 100644
--- a/flink-formats/flink-sql-avro/pom.xml
+++ b/flink-formats/flink-sql-avro/pom.xml
@@ -42,6 +42,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-avro</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
                <dependency>
                        <groupId>org.apache.flink</groupId>
diff --git a/flink-formats/flink-sql-csv/pom.xml 
b/flink-formats/flink-sql-csv/pom.xml
index 269499c53cd..1a28a3ef931 100644
--- a/flink-formats/flink-sql-csv/pom.xml
+++ b/flink-formats/flink-sql-csv/pom.xml
@@ -42,6 +42,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-csv</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
        </dependencies>
 
diff --git a/flink-formats/flink-sql-json/pom.xml 
b/flink-formats/flink-sql-json/pom.xml
index e32e66f6c55..63646811591 100644
--- a/flink-formats/flink-sql-json/pom.xml
+++ b/flink-formats/flink-sql-json/pom.xml
@@ -42,6 +42,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-json</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
        </dependencies>
 
diff --git a/flink-formats/flink-sql-orc/pom.xml 
b/flink-formats/flink-sql-orc/pom.xml
index bdc6404872c..105d98e14fd 100644
--- a/flink-formats/flink-sql-orc/pom.xml
+++ b/flink-formats/flink-sql-orc/pom.xml
@@ -42,6 +42,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-orc</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
        </dependencies>
 
diff --git a/flink-formats/flink-sql-parquet/pom.xml 
b/flink-formats/flink-sql-parquet/pom.xml
index e1764a4cce6..82c7b9938d2 100644
--- a/flink-formats/flink-sql-parquet/pom.xml
+++ b/flink-formats/flink-sql-parquet/pom.xml
@@ -42,12 +42,14 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-parquet</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.apache.parquet</groupId>
                        <artifactId>parquet-avro</artifactId>
                        <version>${flink.format.parquet.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <exclusion>
                                        <groupId>org.apache.hadoop</groupId>
diff --git a/flink-formats/flink-sql-protobuf/pom.xml 
b/flink-formats/flink-sql-protobuf/pom.xml
index 923cf153437..0e3bd96b668 100644
--- a/flink-formats/flink-sql-protobuf/pom.xml
+++ b/flink-formats/flink-sql-protobuf/pom.xml
@@ -42,6 +42,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-protobuf</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
        </dependencies>
 
diff --git a/flink-kubernetes/pom.xml b/flink-kubernetes/pom.xml
index 8229666c5fb..eb79ec02595 100644
--- a/flink-kubernetes/pom.xml
+++ b/flink-kubernetes/pom.xml
@@ -62,6 +62,7 @@ under the License.
                        <groupId>io.fabric8</groupId>
                        <artifactId>kubernetes-client</artifactId>
                        <version>${kubernetes.client.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- test dependencies -->
diff --git a/flink-metrics/flink-metrics-datadog/pom.xml 
b/flink-metrics/flink-metrics-datadog/pom.xml
index fd2b40742b9..7a95752017b 100644
--- a/flink-metrics/flink-metrics-datadog/pom.xml
+++ b/flink-metrics/flink-metrics-datadog/pom.xml
@@ -55,6 +55,7 @@ under the License.
                <dependency>
                        <groupId>com.squareup.okhttp3</groupId>
                        <artifactId>okhttp</artifactId>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
diff --git a/flink-metrics/flink-metrics-graphite/pom.xml 
b/flink-metrics/flink-metrics-graphite/pom.xml
index 310d6d3411a..2c53624a93d 100644
--- a/flink-metrics/flink-metrics-graphite/pom.xml
+++ b/flink-metrics/flink-metrics-graphite/pom.xml
@@ -50,18 +50,21 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-metrics-dropwizard</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>io.dropwizard.metrics</groupId>
                        <artifactId>metrics-core</artifactId>
                        <version>${dropwizard.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>io.dropwizard.metrics</groupId>
                        <artifactId>metrics-graphite</artifactId>
                        <version>${dropwizard.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- test dependencies -->
diff --git a/flink-metrics/flink-metrics-influxdb/pom.xml 
b/flink-metrics/flink-metrics-influxdb/pom.xml
index 3cc5b1ad900..efa94fe4644 100644
--- a/flink-metrics/flink-metrics-influxdb/pom.xml
+++ b/flink-metrics/flink-metrics-influxdb/pom.xml
@@ -50,6 +50,7 @@ under the License.
                        <groupId>org.influxdb</groupId>
                        <artifactId>influxdb-java</artifactId>
                        <version>2.17</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- test dependencies -->
diff --git a/flink-metrics/flink-metrics-prometheus/pom.xml 
b/flink-metrics/flink-metrics-prometheus/pom.xml
index b5fa2107b5c..7821478ddf9 100644
--- a/flink-metrics/flink-metrics-prometheus/pom.xml
+++ b/flink-metrics/flink-metrics-prometheus/pom.xml
@@ -61,18 +61,21 @@ under the License.
                        <groupId>io.prometheus</groupId>
                        <artifactId>simpleclient</artifactId>
                        <version>${prometheus.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>io.prometheus</groupId>
                        <artifactId>simpleclient_httpserver</artifactId>
                        <version>${prometheus.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>io.prometheus</groupId>
                        <artifactId>simpleclient_pushgateway</artifactId>
                        <version>${prometheus.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- test dependencies -->
diff --git a/flink-python/pom.xml b/flink-python/pom.xml
index 339510b5b6f..30cabe9ba84 100644
--- a/flink-python/pom.xml
+++ b/flink-python/pom.xml
@@ -95,6 +95,7 @@ under the License.
                <dependency>
                        <groupId>org.apache.beam</groupId>
                        <artifactId>beam-runners-java-fn-execution</artifactId>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <exclusion>
                                        <groupId>org.apache.beam</groupId>
@@ -110,6 +111,7 @@ under the License.
                <dependency>
                        <groupId>org.apache.beam</groupId>
                        <artifactId>beam-runners-core-java</artifactId>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- PemJa dependencies -->
@@ -117,6 +119,7 @@ under the License.
                        <groupId>com.alibaba</groupId>
                        <artifactId>pemja</artifactId>
                        <version>0.3.0</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- Protobuf dependencies -->
@@ -124,6 +127,7 @@ under the License.
                <dependency>
                        <groupId>com.google.protobuf</groupId>
                        <artifactId>protobuf-java</artifactId>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- Python API dependencies -->
@@ -131,11 +135,13 @@ under the License.
                <dependency>
                        <groupId>net.sf.py4j</groupId>
                        <artifactId>py4j</artifactId>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
                <dependency>
                        <groupId>net.razorvine</groupId>
                        <artifactId>pyrolite</artifactId>
                        <version>4.13</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <exclusion>
                                        <groupId>net.razorvine</groupId>
@@ -150,6 +156,7 @@ under the License.
                        <groupId>org.apache.arrow</groupId>
                        <artifactId>arrow-vector</artifactId>
                        <version>${arrow.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <exclusion>
                                        <groupId>commons-codec</groupId>
@@ -161,6 +168,7 @@ under the License.
                        <groupId>org.apache.arrow</groupId>
                        <artifactId>arrow-memory-netty</artifactId>
                        <version>${arrow.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- test dependencies -->
diff --git a/flink-rpc/flink-rpc-akka/pom.xml b/flink-rpc/flink-rpc-akka/pom.xml
index 9de36d88504..40263144bcd 100644
--- a/flink-rpc/flink-rpc-akka/pom.xml
+++ b/flink-rpc/flink-rpc-akka/pom.xml
@@ -62,22 +62,26 @@ under the License.
                        <groupId>org.scala-lang</groupId>
                        <artifactId>scala-library</artifactId>
                        <scope>compile</scope>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
                <dependency>
                        <groupId>org.scala-lang</groupId>
                        <artifactId>scala-compiler</artifactId>
                        <scope>compile</scope>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>com.typesafe.akka</groupId>
                        
<artifactId>akka-actor_${scala.binary.version}</artifactId>
                        <version>${akka.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
                <dependency>
                        <groupId>com.typesafe.akka</groupId>
                        
<artifactId>akka-remote_${scala.binary.version}</artifactId>
                        <version>${akka.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <exclusion>
                                        <!-- optional dependency for UDP 
transport which we don't need -->
@@ -95,11 +99,13 @@ under the License.
                        <groupId>com.typesafe.akka</groupId>
                        
<artifactId>akka-slf4j_${scala.binary.version}</artifactId>
                        <version>${akka.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
                <dependency>
                        <groupId>io.netty</groupId>
                        <artifactId>netty</artifactId>
                        <version>3.10.6.Final</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
diff --git a/flink-runtime/pom.xml b/flink-runtime/pom.xml
index 527011d1419..09174f6f1c9 100644
--- a/flink-runtime/pom.xml
+++ b/flink-runtime/pom.xml
@@ -205,6 +205,7 @@ under the License.
                        <groupId>io.airlift</groupId>
                        <artifactId>aircompressor</artifactId>
                        <version>0.21</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- test dependencies -->
diff --git a/flink-table/flink-sql-client/pom.xml 
b/flink-table/flink-sql-client/pom.xml
index 2a3ca44e52a..aa919531ee3 100644
--- a/flink-table/flink-sql-client/pom.xml
+++ b/flink-table/flink-sql-client/pom.xml
@@ -70,12 +70,14 @@ under the License.
                        <groupId>org.jline</groupId>
                        <artifactId>jline-terminal</artifactId>
                        <version>3.21.0</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
                        <groupId>org.jline</groupId>
                        <artifactId>jline-reader</artifactId>
                        <version>3.21.0</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- configuration -->
@@ -187,6 +189,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-sql-parser</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <exclusion>
                                        <groupId>org.apache.calcite</groupId>
diff --git a/flink-table/flink-sql-gateway/pom.xml 
b/flink-table/flink-sql-gateway/pom.xml
index 908be32b039..f61b4005e4b 100644
--- a/flink-table/flink-sql-gateway/pom.xml
+++ b/flink-table/flink-sql-gateway/pom.xml
@@ -47,6 +47,7 @@
             <groupId>org.apache.flink</groupId>
             <artifactId>flink-sql-gateway-api</artifactId>
             <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
         </dependency>
         <dependency>
             <groupId>org.apache.flink</groupId>
diff --git a/flink-table/flink-sql-jdbc-driver-bundle/pom.xml 
b/flink-table/flink-sql-jdbc-driver-bundle/pom.xml
index 9d43bdb9be4..7bdc62b30f0 100644
--- a/flink-table/flink-sql-jdbc-driver-bundle/pom.xml
+++ b/flink-table/flink-sql-jdbc-driver-bundle/pom.xml
@@ -39,31 +39,37 @@
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-sql-jdbc-driver</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-sql-client</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-sql-gateway-api</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-sql-gateway</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-table-common</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-annotations</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- Used to create Executor in connection. TODO jdbc driver 
should get rid of flink-core which is a big module. -->
@@ -71,6 +77,7 @@
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-core</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
        </dependencies>
 
diff --git a/flink-table/flink-table-api-java-uber/pom.xml 
b/flink-table/flink-table-api-java-uber/pom.xml
index 1d5eb41f29e..70fe59b3581 100644
--- a/flink-table/flink-table-api-java-uber/pom.xml
+++ b/flink-table/flink-table-api-java-uber/pom.xml
@@ -40,26 +40,31 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-table-common</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-table-api-java</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-table-api-bridge-base</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-table-api-java-bridge</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-sql-gateway-api</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
        </dependencies>
 
diff --git a/flink-table/flink-table-code-splitter/pom.xml 
b/flink-table/flink-table-code-splitter/pom.xml
index 68905ef8fc1..22daa5751ef 100644
--- a/flink-table/flink-table-code-splitter/pom.xml
+++ b/flink-table/flink-table-code-splitter/pom.xml
@@ -47,6 +47,7 @@ under the License.
                        <groupId>org.antlr</groupId>
                        <artifactId>antlr4-runtime</artifactId>
                        <version>${antlr4.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <dependency>
diff --git a/flink-table/flink-table-planner-loader-bundle/pom.xml 
b/flink-table/flink-table-planner-loader-bundle/pom.xml
index 4cee117f473..7c0554655c4 100644
--- a/flink-table/flink-table-planner-loader-bundle/pom.xml
+++ b/flink-table/flink-table-planner-loader-bundle/pom.xml
@@ -44,6 +44,7 @@
                        
<artifactId>flink-table-planner_${scala.binary.version}</artifactId>
                        <version>${project.version}</version>
                        <scope>runtime</scope>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
        </dependencies>
 
diff --git a/flink-table/flink-table-planner/pom.xml 
b/flink-table/flink-table-planner/pom.xml
index 1d61615d30f..51255452db5 100644
--- a/flink-table/flink-table-planner/pom.xml
+++ b/flink-table/flink-table-planner/pom.xml
@@ -42,6 +42,7 @@ under the License.
                <dependency>
                        <groupId>com.google.guava</groupId>
                        <artifactId>guava</artifactId>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <exclusion>
                                        <groupId>org.checkerframework</groupId>
@@ -92,6 +93,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-sql-parser</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                        <exclusions>
                                <exclusion>
                                        <groupId>org.apache.calcite</groupId>
@@ -109,6 +111,7 @@ under the License.
                        <groupId>org.checkerframework</groupId>
                        <artifactId>checker-qual</artifactId>
                        <version>3.10.0</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- Table Runtime (not included in the uber) -->
@@ -124,6 +127,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-table-calcite-bridge</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- Test dependencies -->
diff --git a/flink-table/flink-table-runtime/pom.xml 
b/flink-table/flink-table-runtime/pom.xml
index de60fed50f8..a50823b22c9 100644
--- a/flink-table/flink-table-runtime/pom.xml
+++ b/flink-table/flink-table-runtime/pom.xml
@@ -59,6 +59,7 @@ under the License.
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-table-code-splitter</artifactId>
                        <version>${project.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- Flink dependencies -->
@@ -72,10 +73,12 @@ under the License.
                <dependency>
                        <groupId>org.codehaus.janino</groupId>
                        <artifactId>janino</artifactId>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
                <dependency>
                        <groupId>org.codehaus.janino</groupId>
                        <artifactId>commons-compiler</artifactId>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- JsonPath -->
@@ -84,6 +87,7 @@ under the License.
                        <groupId>com.jayway.jsonpath</groupId>
                        <artifactId>json-path</artifactId>
                        <version>${jsonpath.version}</version>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- Test dependencies -->
diff --git a/pom.xml b/pom.xml
index 7e77b35570f..a881b395669 100644
--- a/pom.xml
+++ b/pom.xml
@@ -124,6 +124,7 @@ under the License.
                <flink.surefire.baseArgLine>-XX:+UseG1GC 
-Xms256m</flink.surefire.baseArgLine>
                <flink.shaded.version>16.1</flink.shaded.version>
                
<flink.shaded.jackson.version>2.13.4</flink.shaded.jackson.version>
+               <flink.markBundledAsOptional>true</flink.markBundledAsOptional>
                <target.java.version>1.8</target.java.version>
                <slf4j.version>1.7.36</slf4j.version>
                <log4j.version>2.17.1</log4j.version>
@@ -206,6 +207,7 @@ under the License.
                <dependency>
                        <groupId>org.apache.flink</groupId>
                        <artifactId>flink-shaded-force-shading</artifactId>
+                       <optional>${flink.markBundledAsOptional}</optional>
                </dependency>
 
                <!-- Root dependencies for all projects -->
@@ -938,6 +940,20 @@ under the License.
        </dependencyManagement>
 
        <profiles>
+               <profile>
+                       <id>intellij</id>
+                       <activation>
+                               <property>
+                                       <name>idea.version</name>
+                               </property>
+                       </activation>
+                       <properties>
+                               <!-- Set to false so that all required 
dependencies are put on the classpath,
+                                    since IntelliJ does not work against jars 
produced by the shade plugin
+                                    (which may bundled said classes). -->
+                               
<flink.markBundledAsOptional>false</flink.markBundledAsOptional>
+                       </properties>
+               </profile>
                <profile>
                        <id>scala-2.12</id>
                        <properties>


Reply via email to