| plugins { | |
| id "java-library" | |
| id "java-test-fixtures" | |
| id "maven-publish" | |
| id "me.champeau.jmh" | |
| id "ru.vyarus.animalsniffer" | |
| } | |
| description = 'gRPC: API' | |
| sourceSets { | |
| context | |
| main { | |
| output.classesDirs.from(sourceSets.context.output.classesDirs) | |
| } | |
| } | |
| tasks.named("compileContextJava").configure { | |
| if (JavaVersion.current().isJava9Compatible()) { | |
| options.release = 8 | |
| } else { | |
| sourceCompatibility = JavaVersion.VERSION_1_8 | |
| targetCompatibility = JavaVersion.VERSION_1_8 | |
| } | |
| } | |
| tasks.named("jar").configure { | |
| manifest { | |
| attributes('Automatic-Module-Name': 'io.grpc') | |
| } | |
| } | |
| dependencies { | |
| compileOnly sourceSets.context.output | |
| api libraries.jsr305, | |
| libraries.errorprone.annotations | |
| implementation libraries.guava | |
| testFixturesApi libraries.truth | |
| testFixturesImplementation libraries.jsr305 | |
| testFixturesImplementation libraries.guava, | |
| libraries.junit, | |
| libraries.mockito.core | |
| testImplementation project(':grpc-core') | |
| testImplementation project(':grpc-testing') | |
| testImplementation libraries.guava.testlib | |
| testImplementation libraries.truth | |
| signature (libraries.signature.java) { | |
| artifact { | |
| extension = "signature" | |
| } | |
| } | |
| signature (libraries.signature.android) { | |
| artifact { | |
| extension = "signature" | |
| } | |
| } | |
| } | |
| animalsniffer { | |
| annotation = 'io.grpc.IgnoreJRERequirement' | |
| } | |
| tasks.named("javadoc").configure { | |
| source sourceSets.context.allSource | |
| // We want io.grpc.Internal, but not io.grpc.Internal* | |
| exclude 'io/grpc/*MetricInstrument.java' | |
| exclude 'io/grpc/*MetricInstrumentRegistry.java' | |
| exclude 'io/grpc/Internal?*.java' | |
| exclude 'io/grpc/MetricRecorder.java' | |
| exclude 'io/grpc/MetricSink.java' | |
| exclude 'io/grpc/Uri.java' | |
| } | |
| tasks.named("sourcesJar").configure { | |
| from sourceSets.context.allSource | |
| } | |
| components.java.withVariantsFromConfiguration(configurations.testFixturesApiElements) { skip() } | |
| components.java.withVariantsFromConfiguration(configurations.testFixturesRuntimeElements) { skip() } |