blob: 83cc4be1576904cea9aee51140f4a77a410068f4 [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* License); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an AS IS BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// We specifically enumerate all the projects that we depend on since
// the list is used in both defining the included set for the uber jar
// and also the set of project level dependencies.
def dependOnProjects = [":beam-model-pipeline", ":beam-model-fn-execution", ":beam-sdks-java-core",
":beam-sdks-java-fn-execution",
":beam-sdks-java-extensions-google-cloud-platform-core",
":beam-runners-core-java", ":beam-runners-core-construction-java"]
apply plugin: org.apache.beam.gradle.BeamModulePlugin
applyJavaNature(validateShadowJar: false, shadowClosure: DEFAULT_SHADOW_CLOSURE <<
// Create an uber jar without repackaging for the SDK harness
// TODO: We have been releasing this in the past, consider not
// releasing it since its typically bad practice to release 'all'
// jars.
{
dependencies {
// Directly include all projects depended on
dependOnProjects.each {
include(project(path: it, configuration: "shadow"))
}
// Include all dependencies and transitive dependencies
include(dependency(".*:.*"))
}
})
description = "Apache Beam :: SDKs :: Java :: Harness"
ext.summary = "This contains the SDK Fn Harness for Beam Java"
dependencies {
dependOnProjects.each {
compile project(path: it, configuration: "shadow")
}
compile library.java.jackson_databind
compile library.java.guava
compile library.java.joda_time
compile library.java.slf4j_api
provided library.java.error_prone_annotations
testCompile library.java.hamcrest_core
testCompile library.java.hamcrest_library
testCompile library.java.junit
testCompile library.java.mockito_core
testCompile library.java.slf4j_jdk14
testCompile project(path: ":beam-sdks-java-core", configuration: "shadowTest")
}