| plugins { |
| id "java-library" |
| id "maven-publish" |
| |
| id "me.champeau.gradle.japicmp" |
| id "me.champeau.jmh" |
| id "ru.vyarus.animalsniffer" |
| } |
| |
| description = "gRPC: Netty" |
| |
| configurations { |
| alpnagent |
| } |
| |
| dependencies { |
| api project(':grpc-core'), |
| libraries.netty.codec.http2 |
| implementation libs.netty.handler.proxy, |
| libraries.guava, |
| libraries.errorprone.annotations, |
| libraries.perfmark.api, |
| libraries.netty.unix.common |
| |
| // Tests depend on base class defined by core module. |
| testImplementation testFixtures(project(':grpc-core')), |
| testFixtures(project(':grpc-api')), |
| project(':grpc-testing'), |
| project(':grpc-testing-proto'), |
| libraries.conscrypt, |
| libraries.netty.transport.epoll |
| testRuntimeOnly libraries.netty.tcnative, |
| libraries.netty.tcnative.classes |
| testRuntimeOnly (libraries.netty.tcnative) { |
| artifact { |
| classifier = "linux-x86_64" |
| } |
| } |
| testRuntimeOnly (libraries.netty.tcnative) { |
| artifact { |
| classifier = "linux-aarch_64" |
| } |
| } |
| testRuntimeOnly (libraries.netty.tcnative) { |
| artifact { |
| classifier = "osx-x86_64" |
| } |
| } |
| testRuntimeOnly (libraries.netty.tcnative) { |
| artifact { |
| classifier = "osx-aarch_64" |
| } |
| } |
| testRuntimeOnly (libraries.netty.tcnative) { |
| artifact { |
| classifier = "windows-x86_64" |
| } |
| } |
| testRuntimeOnly (libraries.netty.transport.epoll) { |
| artifact { |
| classifier = "linux-x86_64" |
| } |
| } |
| signature libraries.signature.java |
| signature libraries.signature.android |
| alpnagent libraries.jetty.alpn.agent |
| } |
| |
| import net.ltgt.gradle.errorprone.CheckSeverity |
| |
| [tasks.named("compileJava"), tasks.named("compileTestJava")]*.configure { |
| // Netty retuns a lot of futures that we mostly don't care about. |
| options.errorprone.check("FutureReturnValueIgnored", CheckSeverity.OFF) |
| } |
| |
| tasks.named("javadoc").configure { |
| options.links 'http://netty.io/4.1/api/' |
| exclude 'io/grpc/netty/Internal*' |
| } |
| |
| tasks.named("test").configure { |
| // Allow testing Jetty ALPN in TlsTest |
| jvmArgs "-javaagent:" + configurations.alpnagent.asPath |
| } |
| |
| tasks.named("jmh").configure { |
| // Workaround |
| // https://github.com/melix/jmh-gradle-plugin/issues/97#issuecomment-316664026 |
| includeTests = true |
| } |
| |
| tasks.named("checkstyleMain").configure { |
| source = source.minus(fileTree(dir: "src/main", include: "**/Http2ControlFrameLimitEncoder.java")) |
| } |