github.com/apache/beam/sdks/v2@v2.48.2/java/extensions/kryo/build.gradle (about)

     1  /*
     2   * Licensed to the Apache Software Foundation (ASF) under one
     3   * or more contributor license agreements.  See the NOTICE file
     4   * distributed with this work for additional information
     5   * regarding copyright ownership.  The ASF licenses this file
     6   * to you under the Apache License, Version 2.0 (the
     7   * "License"); you may not use this file except in compliance
     8   * with the License.  You may obtain a copy of the License at
     9   *
    10   *     http://www.apache.org/licenses/LICENSE-2.0
    11   *
    12   * Unless required by applicable law or agreed to in writing, software
    13   * distributed under the License is distributed on an "AS IS" BASIS,
    14   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    15   * See the License for the specific language governing permissions and
    16   * limitations under the License.
    17   */
    18  
    19  plugins { id 'org.apache.beam.module' }
    20  
    21  ext {
    22      kryoVersion = '4.0.2'
    23  }
    24  
    25  applyJavaNature( automaticModuleName: 'org.apache.beam.sdk.extensions.kryo',
    26      exportJavadoc: false,
    27      shadowClosure: {
    28      dependencies {
    29          include(dependency('com.esotericsoftware:.*'))
    30          include(dependency('org.ow2.asm:asm'))
    31          include(dependency('org.objenesis:objenesis'))
    32      }
    33      relocate 'com.esotericsoftware', getJavaRelocatedPath('com.esotericsoftware')
    34      relocate 'org.objectweb', getJavaRelocatedPath('org.objectweb')
    35      relocate 'org.objenesis', getJavaRelocatedPath('org.objenesis')
    36      }
    37  )
    38  
    39  description = 'Apache Beam :: SDKs :: Java :: Extensions :: Kryo'
    40  
    41  dependencies {
    42      implementation library.java.jackson_annotations
    43      implementation library.java.vendored_guava_26_0_jre
    44      implementation "com.esotericsoftware:kryo:${kryoVersion}"
    45      implementation "org.objenesis:objenesis:3.2"
    46      shadow project(path: ':sdks:java:core', configuration: 'shadow')
    47      testImplementation project(path: ':sdks:java:core', configuration: 'shadowTest')
    48      testRuntimeOnly project(path: ':runners:direct-java', configuration: 'shadow')
    49  }
    50  
    51  test {
    52      jvmArgs '-Dsun.io.serialization.extendedDebugInfo=true'
    53  }