1919plugins { id ' org.apache.beam.module' }
2020applyJavaNature(
2121 automaticModuleName : ' org.apache.beam.sdk.io.delta' ,
22- // Latest version of the Delta Kernel API requires Java 17.
2322 requireJavaVersion : JavaVersion . VERSION_17 ,
2423)
2524
25+ tasks. withType(JavaCompile ) {
26+ options. errorprone. enabled = false
27+ }
28+
2629description = " Apache Beam :: SDKs :: Java :: IO :: Delta Lake"
2730ext. summary = " Integration with Delta Lake."
2831
32+ // We need to override the GCS bigdataos connector version to prevent conflicts.
33+ def bigdataoss_gcs_connector_version = " 4.0.4"
34+
35+ def parquet_version = " 1.16.0"
2936
3037dependencies {
3138 implementation project(path : " :sdks:java:core" , configuration : " shadow" )
@@ -35,5 +42,45 @@ dependencies {
3542 permitUnusedDeclared library. java. delta_kernel_api
3643 permitUnusedDeclared library. java. delta_kernel_defaults
3744
45+ implementation library. java. hadoop_common
46+ implementation library. java. joda_time
47+ implementation library. java. slf4j_api
48+ implementation " org.apache.parquet:parquet-column:$parquet_version "
49+ implementation " org.apache.parquet:parquet-hadoop:$parquet_version "
50+
51+ // We need to override the GCS connector version to prevent conflicts with
52+ // latest Hadoop.
53+ implementation " com.google.cloud.bigdataoss:gcs-connector:$bigdataoss_gcs_connector_version "
54+ implementation " com.google.cloud.bigdataoss:util-hadoop:$bigdataoss_gcs_connector_version "
55+ implementation " com.google.cloud.bigdataoss:gcsio:$bigdataoss_gcs_connector_version "
56+ implementation " com.google.cloud.bigdataoss:util:$bigdataoss_gcs_connector_version "
57+ permitUnusedDeclared " com.google.cloud.bigdataoss:gcs-connector:$bigdataoss_gcs_connector_version "
58+ permitUnusedDeclared " com.google.cloud.bigdataoss:util-hadoop:$bigdataoss_gcs_connector_version "
59+ permitUnusedDeclared " com.google.cloud.bigdataoss:gcsio:$bigdataoss_gcs_connector_version "
60+ permitUnusedDeclared " com.google.cloud.bigdataoss:util:$bigdataoss_gcs_connector_version "
61+
62+ // For Avro conversions
63+ testImplementation project(" :sdks:java:extensions:avro" )
64+
65+ testImplementation library. java. avro
3866 testImplementation library. java. junit
67+ testImplementation library. java. hamcrest
68+ testImplementation " org.apache.parquet:parquet-avro:$parquet_version "
69+ testImplementation project(" :sdks:java:io:parquet" )
70+ testImplementation project(" :sdks:java:managed" )
71+ testRuntimeOnly " org.yaml:snakeyaml:2.0"
72+ testImplementation project(path : " :runners:direct-java" , configuration : " shadow" )
73+ }
74+
75+ configurations. all {
76+ // Exclude conflicting logging frameworks
77+ exclude group : " org.apache.logging.log4j" , module : " log4j-slf4j2-impl"
78+ exclude group : " org.apache.logging.log4j" , module : " log4j-slf4j-impl"
79+ exclude group : " org.slf4j" , module : " slf4j-reload4j"
80+
81+ // Force overriding for all configurations
82+ resolutionStrategy. force " com.google.cloud.bigdataoss:gcs-connector:$bigdataoss_gcs_connector_version "
83+ resolutionStrategy. force " com.google.cloud.bigdataoss:util-hadoop:$bigdataoss_gcs_connector_version "
84+ resolutionStrategy. force " com.google.cloud.bigdataoss:gcsio:$bigdataoss_gcs_connector_version "
85+ resolutionStrategy. force " com.google.cloud.bigdataoss:util:$bigdataoss_gcs_connector_version "
3986}
0 commit comments