| /* |
| * 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. |
| */ |
| |
| plugins { |
| id 'me.champeau.gradle.jmh' version '0.4.8' |
| } |
| |
| apply from: "${rootDir}/${scriptDir}/standard-subproject-configuration.gradle" |
| |
| apply from: "${project.projectDir}/../gradle/publish-java.gradle" |
| apply from: "${project.projectDir}/../gradle/warnings.gradle" |
| |
| dependencies { |
| api(platform(project(':boms:geode-all-bom'))) |
| |
| implementation(project(':geode-core')) |
| implementation(project(':geode-logging')) |
| implementation('org.apache.commons:commons-lang3') |
| |
| implementation('org.apache.logging.log4j:log4j-api') |
| implementation('org.apache.logging.log4j:log4j-core') |
| |
| //This routes slf4j logs to log4j. Shiro and micrometer use slf4j |
| runtimeOnly('org.apache.logging.log4j:log4j-slf4j-impl') { |
| exclude module: 'slf4j-api' |
| ext.optional = true |
| } |
| //This routes commons logging logs to log4j. Several apache commons dependencies use commons logging |
| runtimeOnly('org.apache.logging.log4j:log4j-jcl') { |
| ext.optional = true |
| } |
| //This routes jdk logs to log4j. Several dependencies use JDK logs (jackson, jaxb, ...) |
| runtimeOnly('org.apache.logging.log4j:log4j-jul') { |
| ext.optional = true |
| } |
| |
| jmhImplementation(project(':geode-junit')) { |
| exclude module: 'geode-core' |
| } |
| jmhImplementation('junit:junit') |
| jmhImplementation('org.assertj:assertj-core') |
| jmhImplementation('org.mockito:mockito-core') |
| |
| testImplementation(project(':geode-junit')) { |
| exclude module: 'geode-core' |
| } |
| testImplementation('junit:junit') |
| testImplementation('org.assertj:assertj-core') |
| testImplementation('org.mockito:mockito-core') |
| |
| integrationTestImplementation(project(':geode-junit')) { |
| exclude module: 'geode-core' |
| } |
| integrationTestImplementation('junit:junit') |
| integrationTestImplementation('org.apache.logging.log4j:log4j-core::tests') |
| integrationTestImplementation('org.apache.logging.log4j:log4j-core::test-sources') |
| integrationTestImplementation('org.assertj:assertj-core') |
| |
| distributedTestImplementation(project(':geode-junit')) { |
| exclude module: 'geode-core' |
| } |
| distributedTestImplementation('commons-io:commons-io') |
| distributedTestImplementation('junit:junit') |
| distributedTestImplementation('org.apache.commons:commons-lang3') |
| distributedTestImplementation('org.assertj:assertj-core') |
| distributedTestImplementation('org.awaitility:awaitility') |
| distributedTestImplementation('org.hamcrest:hamcrest') |
| distributedTestImplementation('org.mockito:mockito-core') |
| distributedTestImplementation('pl.pragmatists:JUnitParams') |
| } |
| |
| jmh { |
| duplicateClassesStrategy = 'warn' |
| include = project.hasProperty('jmh.include') ? project.getProperties().get('jmh.include') : '.*' |
| profilers = project.hasProperty('jmh.profilers') ? project.getProperties().get('jmh.profilers').tokenize() : [] |
| threads = project.hasProperty('jmh.threads') ? project.getProperties().get('jmh.threads') : null |
| } |
| |
| jmhJar { |
| inputs.files(project.sourceSets.main.output, project.sourceSets.test.output) |
| from { |
| [configurations.jmh, configurations.jmhRuntime, configurations.runtimeClasspath].collect { |
| it.asFileTree.collect { |
| it |
| } |
| }.flatten().unique().collect { |
| it.isDirectory() ? it : zipTree(it) |
| } |
| } |
| exclude(['META-INF/*.SF']) |
| exclude('META-INF/org/apache/logging/log4j/core/config/plugins/Log4j2Plugins.dat') |
| exclude('*.jar') |
| } |