java-spiffe/java-spiffe-core/build.gradle

60 lines
1.6 KiB
Groovy

buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath group: 'com.google.protobuf', name: 'protobuf-gradle-plugin', version: '0.8.12'
}
}
apply plugin: 'com.google.protobuf'
sourceSets {
main {
java {
srcDirs 'build/generated/source/proto/main/grpc'
srcDirs 'build/generated/source/proto/main/java'
}
}
}
ext {
grpcVersion = '1.30.0'
}
protobuf {
protoc {
artifact = 'com.google.protobuf:protoc:3.12.0'
}
plugins {
grpc {
artifact = "io.grpc:protoc-gen-grpc-java:${grpcVersion}"
}
}
generateProtoTasks {
all()*.plugins {
grpc {}
}
}
}
dependencies {
implementation group: 'io.grpc', name: 'grpc-netty-shaded', version: "${grpcVersion}"
implementation group: 'io.grpc', name: 'grpc-protobuf', version: "${grpcVersion}"
implementation group: 'io.grpc', name: 'grpc-stub', version: "${grpcVersion}"
testImplementation group: 'io.grpc', name: 'grpc-testing', version: "${grpcVersion}"
if (JavaVersion.current().isJava11Compatible()) {
// Workaround for @javax.annotation.Generated not found (Grpc generated code)
compileOnly group: 'javax.annotation', name: 'javax.annotation-api', version: '1.3.2'
}
// library for processing JWT tokens and JOSE JWK bundles
implementation group: 'com.nimbusds', name: 'nimbus-jose-jwt', version: '8.19'
// using bouncy castle for generating X.509 certs for testing purposes
testImplementation group: 'org.bouncycastle', name: 'bcpkix-jdk15on', version: '1.65'
}