-
Notifications
You must be signed in to change notification settings - Fork 11
/
build.gradle
105 lines (86 loc) · 2.49 KB
/
build.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
plugins {
id 'java'
id 'application'
id 'checkstyle'
id 'com.diffplug.spotless' version '6.25.0'
id 'com.github.johnrengelman.shadow' version '8.1.1'
id 'io.freefair.lombok' version '8.4'
id 'com.google.protobuf' version '0.9.4'
}
repositories {
mavenCentral()
}
dependencies {
// LittleHorse
implementation project(':sdk-java')
// Tools
implementation 'com.google.guava:guava:33.0.0-jre'
// Configurations
implementation 'io.smallrye.config:smallrye-config:3.5.2'
// Logging
implementation 'org.slf4j:slf4j-api:2.0.11'
implementation 'org.apache.logging.log4j:log4j-slf4j2-impl:2.22.1'
// Kafka
implementation 'org.apache.kafka:kafka-streams:3.6.1'
testImplementation 'org.apache.kafka:kafka-streams-test-utils:3.6.1'
// Web API
implementation 'io.javalin:javalin:6.3.0'
implementation 'io.javalin:javalin-micrometer:6.3.0'
// Prometheus
implementation 'io.micrometer:micrometer-registry-prometheus:1.14.2'
// RocksDB
implementation 'org.rocksdb:rocksdbjni:9.0.0'
// Tests
testImplementation platform('org.junit:junit-bom:5.9.1')
testImplementation 'org.junit.jupiter:junit-jupiter'
testImplementation 'org.assertj:assertj-core:3.11.1'
testImplementation 'org.junit-pioneer:junit-pioneer:2.2.0'
testImplementation 'org.mockito:mockito-core:5.11.0'
testImplementation 'org.mockito:mockito-junit-jupiter:5.11.0'
testImplementation 'net.datafaker:datafaker:2.1.0'
}
test {
useJUnitPlatform()
testLogging {
events 'passed', 'skipped', 'failed'
exceptionFormat = 'full'
}
jvmArgs = ['--add-opens', 'java.base/java.lang=ALL-UNNAMED', '--add-opens', 'java.base/java.util=ALL-UNNAMED']
}
spotless {
java {
target('**/*.java')
palantirJavaFormat()
}
}
application {
mainClass = 'io.littlehorse.canary.Main'
}
shadowJar {
mergeServiceFiles()
}
java {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
compileJava {
options.encoding = 'UTF-8'
options.compilerArgs << '-parameters'
}
protobuf {
protoc {
artifact = 'com.google.protobuf:protoc:3.25.2'
}
plugins {
grpc {
artifact = 'io.grpc:protoc-gen-grpc-java:1.61.0'
}
}
}
checkstyle {
configFile = file("${rootDir}/canary/checkstyle.xml")
checkstyleTest.enabled = false
}
tasks.withType(Checkstyle).configureEach {
exclude('**io/littlehorse/canary/proto**')
}