blob: a48a07be5f152bc2d909d71071321dfbe39cf75c (
plain)
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
106
107
108
|
plugins {
id "java"
id "checkstyle"
id "com.google.protobuf" version "0.8.19"
id "org.kordamp.gradle.project-enforcer" version "0.10.0"
}
repositories {
mavenCentral()
}
ext {
guiceVersion = "5.1.0"
jettyVersion = "10.0.12" // jetty 11 javax to jakarta
jerseyVersion = "2.37" // jersey 3 javax to jakarta
jacksonVersion = "2.13.4" // same version as jersey-media-json-jackson dependency
protobufVersion = "3.21.9"
}
sourceCompatibility = "11"
compileJava.options.encoding = "UTF-8"
jar.destinationDirectory = file("$projectDir/target")
checkstyle {
toolVersion = "10.3.4"
configFile = "gradle/checkstyle.xml" as File
checkstyleTest.enabled = false
}
protobuf {
protoc {
artifact = "com.google.protobuf:protoc:$protobufVersion"
}
}
enforce {
rule(enforcer.rules.EnforceBytecodeVersion) { r ->
r.maxJdkVersion = "11"
}
}
dependencies {
implementation "commons-codec:commons-codec:1.15"
implementation "com.h2database:h2:2.1.214"
implementation "com.mysql:mysql-connector-j:8.0.31"
implementation "org.postgresql:postgresql:42.5.1"
implementation "com.microsoft.sqlserver:mssql-jdbc:11.2.1.jre11"
implementation "com.zaxxer:HikariCP:5.0.1"
implementation "io.netty:netty-all:4.1.85.Final"
implementation "org.slf4j:slf4j-jdk14:2.0.5"
implementation "com.google.inject:guice:$guiceVersion"
implementation "com.google.inject.extensions:guice-servlet:$guiceVersion"
implementation "org.owasp.encoder:encoder:1.2.3"
implementation "org.glassfish:jakarta.json:1.1.6"
implementation "org.eclipse.jetty:jetty-server:$jettyVersion"
implementation "org.eclipse.jetty:jetty-servlet:$jettyVersion"
implementation "org.eclipse.jetty:jetty-servlets:$jettyVersion"
implementation "org.eclipse.jetty:jetty-webapp:$jettyVersion"
implementation "org.eclipse.jetty:jetty-jndi:$jettyVersion"
implementation "org.eclipse.jetty:jetty-proxy:$jettyVersion"
implementation "org.eclipse.jetty.websocket:websocket-jetty-server:$jettyVersion"
implementation "org.glassfish.jersey.containers:jersey-container-servlet:$jerseyVersion"
implementation "org.glassfish.jersey.media:jersey-media-json-jackson:$jerseyVersion"
implementation "org.glassfish.jersey.inject:jersey-hk2:$jerseyVersion"
implementation "org.glassfish.hk2:guice-bridge:2.6.1" // same version as jersey-hk2
implementation "com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider:$jacksonVersion"
implementation "com.fasterxml.jackson.datatype:jackson-datatype-jsr353:$jacksonVersion"
implementation "org.liquibase:liquibase-core:4.17.2"
implementation "com.sun.mail:jakarta.mail:1.6.7"
implementation "org.jxls:jxls:2.4.7" // needs upgrade (wait for jexl 4)
implementation "org.jxls:jxls-poi:1.0.16" // needs upgrade (wait for jexl 4)
implementation "org.apache.velocity:velocity:1.7" // needs upgrade
implementation "org.apache.velocity:velocity-tools:2.0" // needs upgrade
implementation "org.apache.commons:commons-collections4:4.4"
implementation "org.mnode.ical4j:ical4j:3.2.7"
implementation "org.locationtech.spatial4j:spatial4j:0.8"
implementation "org.locationtech.jts:jts-core:1.19.0"
implementation "net.java.dev.jna:jna-platform:5.12.1"
implementation "com.github.jnr:jnr-posix:3.1.16"
implementation "com.google.protobuf:protobuf-java:$protobufVersion"
implementation "javax.xml.bind:jaxb-api:2.3.1"
implementation "com.sun.xml.bind:jaxb-core:3.0.2" // needs upgrade
implementation "com.sun.xml.bind:jaxb-impl:3.0.2" // needs upgrade
implementation "javax.activation:activation:1.1.1"
implementation "com.amazonaws:aws-java-sdk-sns:1.12.349"
implementation "org.apache.kafka:kafka-clients:3.3.1"
implementation("com.google.firebase:firebase-admin:9.1.1") {
exclude group: 'com.google.cloud', module: 'google-cloud-firestore'
exclude group: 'com.google.cloud', module: 'google-cloud-storage'
}
testImplementation "junit:junit:4.13.2"
testImplementation "org.mockito:mockito-core:4.+"
}
task copyDependencies(type: Copy) {
into "$projectDir/target/lib"
from configurations.runtimeClasspath
}
assemble.dependsOn(copyDependencies)
jar {
manifest {
attributes(
"Main-Class": "org.traccar.Main",
"Implementation-Version": "5.5",
"Class-Path": configurations.runtimeClasspath.files.collect { "lib/$it.name" }.join(" "))
}
}
|