blob: 34214e6f0e319d451bd47f12ac097702e3185c63 [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.
*/
apply plugin: 'java-library'
description = 'Apache Solr Core'
dependencies {
if (skipLucene) {
api "org.apache.lucene:lucene-core"
api "org.apache.lucene:lucene-analysis-common"
api "org.apache.lucene:lucene-analysis-kuromoji"
api "org.apache.lucene:lucene-analysis-nori"
api "org.apache.lucene:lucene-analysis-phonetic"
api "org.apache.lucene:lucene-backward-codecs"
api "org.apache.lucene:lucene-classification"
api "org.apache.lucene:lucene-codecs"
api "org.apache.lucene:lucene-expressions"
api "org.apache.lucene:lucene-grouping"
api "org.apache.lucene:lucene-highlighter"
api "org.apache.lucene:lucene-join"
api "org.apache.lucene:lucene-misc"
api "org.apache.lucene:lucene-queries"
api "org.apache.lucene:lucene-queryparser"
api "org.apache.lucene:lucene-sandbox"
api "org.apache.lucene:lucene-spatial-extras"
api "org.apache.lucene:lucene-suggest"
} else {
api project(':lucene:core')
api project(':lucene:analysis:common')
api project(':lucene:analysis:kuromoji')
api project(':lucene:analysis:nori')
api project(':lucene:analysis:phonetic')
api project(':lucene:backward-codecs')
api project(':lucene:classification')
api project(':lucene:codecs')
api project(':lucene:expressions')
api project(':lucene:grouping')
api project(':lucene:highlighter')
api project(':lucene:join')
api project(':lucene:misc')
api project(':lucene:queries')
api project(':lucene:queryparser')
api project(':lucene:sandbox')
api project(':lucene:spatial-extras')
api project(':lucene:suggest')
}
// Export these dependencies so that they're imported transitively by
// other modules.
api ('com.google.guava:guava', {
exclude group: "org.codehaus.mojo", module: "animal-sniffer-annotations"
exclude group: "com.google.j2objc", module: "j2objc-annotations"
exclude group: "com.google.errorprone", module: "error_prone_annotations"
exclude group: "org.checkerframework", module: "checker-qual"
exclude group: "com.google.code.findbugs", module: "jsr305"
})
api project(':solr:solrj')
api project(':solr:server')
api 'org.apache.commons:commons-lang3'
api 'com.carrotsearch:hppc'
api 'com.fasterxml.jackson.core:jackson-databind'
api 'commons-cli:commons-cli'
api 'commons-codec:commons-codec'
api 'commons-collections:commons-collections'
api 'org.apache.commons:commons-collections4'
implementation 'com.fasterxml.jackson.dataformat:jackson-dataformat-smile'
implementation('com.github.ben-manes.caffeine:caffeine', {
exclude group: "org.checkerframework", module: "checker-qual"
exclude group: "com.google.errorprone", module: "error_prone_annotations"
})
implementation 'com.github.zafarkhaja:java-semver'
implementation 'com.google.re2j:re2j'
implementation('com.jayway.jsonpath:json-path', {
exclude group: "net.minidev", module: "json-smart"
})
implementation 'com.tdunning:t-digest'
implementation 'io.opentracing:opentracing-api'
implementation 'io.opentracing:opentracing-noop'
implementation 'io.opentracing:opentracing-util'
implementation 'org.apache.commons:commons-exec'
implementation 'org.apache.commons:commons-text'
implementation("org.apache.commons:commons-configuration2", {
exclude group: "commons-logging", module: "commons-logging"
})
implementation 'org.apache.htrace:htrace-core4'
implementation 'org.apache.logging.log4j:log4j-api'
implementation 'org.apache.logging.log4j:log4j-core'
implementation 'org.apache.logging.log4j:log4j-slf4j-impl'
api 'org.bitbucket.b_c:jose4j'
implementation 'org.codehaus.janino:commons-compiler'
implementation 'org.codehaus.janino:janino'
implementation 'org.rrd4j:rrd4j'
// For faster XML processing than the JDK
implementation ('org.codehaus.woodstox:woodstox-core-asl', {
exclude group: "javax.xml.stream", module: "stax-api"
})
implementation ('org.apache.calcite.avatica:avatica-core') { transitive = false }
implementation ('org.apache.calcite:calcite-core') { transitive = false }
implementation ('org.apache.calcite:calcite-linq4j') { transitive = false }
implementation ('org.apache.curator:curator-client') { transitive = false }
implementation ('org.apache.curator:curator-framework') { transitive = false }
implementation ('org.apache.hadoop:hadoop-annotations') { transitive = false }
implementation ('org.apache.hadoop:hadoop-auth') { transitive = false }
implementation ('org.apache.hadoop:hadoop-common') { transitive = false }
implementation ('org.apache.hadoop:hadoop-hdfs-client') { transitive = false }
testImplementation 'org.apache.commons:commons-compress' // required for customized hadoop classes
implementation ('net.hydromatic:eigenbase-properties') { transitive = false }
runtimeOnly ('org.apache.curator:curator-recipes') { transitive = false }
runtimeOnly ('org.apache.kerby:kerb-core')
runtimeOnly ('org.apache.kerby:kerb-util')
runtimeOnly ('org.apache.kerby:kerby-asn1')
runtimeOnly ('org.apache.kerby:kerby-pkix')
runtimeOnly ('com.google.protobuf:protobuf-java')
if (skipLucene) {
testImplementation "org.apache.lucene:lucene-analysis-icu"
} else {
testImplementation project(':lucene:analysis:icu')
}
testImplementation project(':solr:contrib:analysis-extras')
testImplementation project(':solr:test-framework')
testImplementation ('org.apache.hadoop:hadoop-common::tests') { transitive = false }
testImplementation ('org.apache.hadoop:hadoop-hdfs') { transitive = false }
testImplementation ('org.apache.hadoop:hadoop-hdfs::tests') { transitive = false }
testImplementation ('org.apache.hadoop:hadoop-minikdc') { transitive = false }
testImplementation 'org.apache.logging.log4j:log4j-1.2-api'
testImplementation ('org.apache.kerby:kerb-client') { transitive = false }
testImplementation ('org.apache.kerby:kerb-common') { transitive = false }
testImplementation ('org.apache.kerby:kerb-identity') { transitive = false }
testImplementation ('org.apache.kerby:kerb-server') { transitive = false }
testImplementation ('org.apache.kerby:kerb-simplekdc') { transitive = false }
testImplementation ('org.apache.kerby:kerb-admin') { transitive = false }
testImplementation ('org.apache.kerby:kerby-kdc') { transitive = false }
testImplementation ('com.sun.jersey:jersey-servlet') { transitive = false }
// required for instantiating a Zookeeper server in tests or embedded
runtimeOnly ('org.xerial.snappy:snappy-java')
testImplementation 'com.google.protobuf:protobuf-java'
testImplementation 'commons-logging:commons-logging'
testImplementation('org.mockito:mockito-core', {
exclude group: "net.bytebuddy", module: "byte-buddy-agent"
})
}