plugins { id 'java' id 'application' } java { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 } tasks.withType(JavaCompile) { options.compilerArgs << '-parameters' } repositories { ivy { ivyPattern "https://sissource.ethz.ch/openbis/openbis-public/openbis-ivy/-/raw/main/[organisation]/[module]/[revision]/ivy.xml" artifactPattern "https://sissource.ethz.ch/openbis/openbis-public/openbis-ivy/-/raw/main/[organisation]/[module]/[revision]/[artifact]-[revision](-[classifier]).[ext]" } mavenCentral() } //'openbis:openbis-v3-api-batteries-included:6.5.0', //files('libs/openBIS-API-V3-batteries-included-SNAPSHOT-r1718006152.jar'), dependencies { implementation 'com.fasterxml.jackson.core:jackson-core' implementation 'com.fasterxml.jackson.core:jackson-databind' implementation 'org.slf4j:slf4j-api:2.0.16' implementation 'edu.kit.datamanager:ro-crate-java:2.0.1' testImplementation 'junit:junit:4.13.1' testImplementation('jmock:jmock:2.5.1') } configurations.configureEach { resolutionStrategy.eachDependency { DependencyResolveDetails details -> // https://docs.gradle.org/current/userguide/resolution_rules.html if (details.requested.group == 'com.fasterxml.jackson.core' && details.requested.name == 'jackson-databind') { details.useVersion '2.18.0' } if (details.requested.group == 'com.fasterxml.jackson.core' && details.requested.name == 'jackson-core') { details.useVersion '2.18.0' } if (details.requested.group == 'org.slf4j') { details.useVersion '2.0.16' } } } tasks.register('buildRdfTool', Jar) { dependsOn tasks.build duplicatesStrategy 'include' archiveBaseName.set('lib-rdf-tool') includeEmptyDirs = false manifest { attributes( 'Main-Class': 'ch.ethz.sis.rdf.main.RDFCommandLine' ) } from(zipTree(tasks.jar.outputs.files.singleFile)) { include '**/*' } from(configurations.runtimeClasspath.collect { zipTree(it) }) { include '**/*' exclude 'META-INF/*.SF', 'META-INF/*.DSA', 'META-INF/*.RSA' } }