2021-03-16 17:38:53 +01:00
plugins {
2023-11-27 12:02:33 +01:00
id 'org.springframework.boot' version '2.7.18'
2024-05-22 15:14:45 +02:00
id 'io.spring.dependency-management' version '1.1.5'
2021-03-16 17:38:53 +01:00
id 'java'
}
2023-07-06 12:22:09 +02:00
java {
group = 'eu.openaire.urls_worker'
2024-05-28 22:10:52 +02:00
version = '2.1.12-SNAPSHOT'
2023-07-27 16:46:17 +02:00
sourceCompatibility = JavaVersion . VERSION_1_8
2023-07-06 12:22:09 +02:00
}
2021-03-16 17:38:53 +01:00
repositories {
mavenCentral ( )
2024-02-08 17:33:18 +01:00
maven {
name "d4science"
url "https://maven.d4science.org/nexus/content/repositories/dnet45-snapshots/"
2021-06-22 04:58:07 +02:00
}
2024-02-08 17:33:18 +01:00
// Enable the following, in case you want to test temporal-jars.
/ * flatDir {
dirs 'libs'
} * /
2021-03-16 17:38:53 +01:00
}
dependencies {
2021-10-30 16:14:18 +02:00
runtimeOnly "org.springframework.boot:spring-boot-devtools"
implementation ( "org.springframework.boot:spring-boot-starter-web" )
implementation ( "org.springframework.boot:spring-boot-starter-security" )
implementation ( "org.springframework.boot:spring-boot-configuration-processor" )
implementation ( "org.springframework.security:spring-security-core" )
implementation ( "org.springframework.security:spring-security-web" )
implementation ( "org.springframework.security:spring-security-config" )
2021-03-16 17:38:53 +01:00
2022-06-27 16:58:02 +02:00
//implementation group: 'io.jsonwebtoken', name: 'jjwt-api', version: '0.11.5' // Use this in case we use auth-tokens later on.
2021-10-11 12:27:40 +02:00
// Enable the validation annotations.
2022-06-27 16:58:02 +02:00
//implementation group: 'jakarta.validation', name: 'jakarta.validation-api', version: '3.0.2'
2021-03-16 17:38:53 +01:00
2024-02-08 17:33:18 +01:00
implementation ( "eu.openaire:publications_retriever:1.2-SNAPSHOT" ) {
2021-06-22 04:58:07 +02:00
exclude group: 'ch.qos.logback' , module: 'logback-core'
exclude group: 'ch.qos.logback' , module: 'logback-classic'
exclude group: 'org.slf4j' , module: 'slf4j-api'
2023-01-09 14:48:30 +01:00
exclude group: 'io.minio' // This is not used in the Worker, since it's the Controller which uploads the full-texts to S3. It also includes an older "commons-compress" version which causes problems.
2021-06-22 04:58:07 +02:00
}
2021-03-16 17:38:53 +01:00
2024-05-22 15:14:45 +02:00
implementation group: 'com.google.guava' , name: 'guava' , version: '33.2.0-jre'
2023-02-24 22:23:37 +01:00
2023-05-23 21:19:41 +02:00
// https://mvnrepository.com/artifact/com.google.code.gson/gson
2024-05-28 22:10:52 +02:00
implementation 'com.google.code.gson:gson:2.11.0'
2023-05-23 21:19:41 +02:00
2024-05-28 22:10:52 +02:00
implementation ( "org.apache.commons:commons-compress:1.26.2" ) {
2023-07-27 16:46:17 +02:00
exclude group: 'com.github.luben' , module: 'zstd-jni'
}
2024-04-26 12:36:41 +02:00
implementation 'com.github.luben:zstd-jni:1.5.6-3' // Even though this is part of the above dependency, the Apache commons rarely updates it, while the zstd team makes improvements very often.
2023-10-04 15:08:38 +02:00
// Also, for compressing, we strangely need it to be explicitly declared independently, otherwise it does not work.
2023-01-09 14:48:30 +01:00
2022-12-09 11:53:08 +01:00
testImplementation 'org.springframework.security:spring-security-test'
2021-10-30 16:14:18 +02:00
testImplementation "org.springframework.boot:spring-boot-starter-test"
2021-03-16 17:38:53 +01:00
}
2021-09-02 17:35:47 +02:00
configurations {
// Eliminates logback from other dependencies.
all * . exclude group: 'ch.qos.logback'
}
2021-12-06 23:52:40 +01:00
// Set increased lower and upper limits for the java-execution.
2022-12-12 16:49:14 +01:00
tasks . withType ( JavaExec ) . configureEach {
2021-12-06 23:52:40 +01:00
jvmArgs = [ '-Xms512m' , '-Xmx8g' ]
}
2021-03-16 17:38:53 +01:00
test {
useJUnitPlatform ( )
}