plugins { id 'java-platform' id 'maven-publish' } ext { scalaVersion = rootProject.ext.scalaVersion javacppPlatform = osdetector.classifier } def javacpp = [version: "1.5.9", presetsVersion: "1.5.9"] def hdf5 = [version: "1.14.1"] def jackson = [version: "2.13.4"] def cuda = [version: "12.1"] def cudnn = [version: "8.9"] def openblas = [version: "0.3.23"] def numpy = [version: "1.24.3"] def tensorflow_lite = [version: "2.12.0"] def tensorflow = [version: "1.15.5"] def tensorrt = [version: "8.6.1.6"] def cpython = [version: "3.11.3"] def mkl = [version:"2023.1"] def javacv = [version:"1.5.9"] def opencv = [version: "4.7.0"] def leptonica = [version: "1.83.0"] def junit = [version: "5.9.1"] def flatbuffers = [version: "1.10.0"] def spark = [version: "3.2.2"] def scala = [version:"2.12.15"] //[version:"2.13.5"] def netty = [version: "4.1.68.Final"] def okhttp3 = [version: "4.10.0"] javaPlatform { allowDependencies() } dependencies { api enforcedPlatform("io.netty:netty-bom:${netty.version}") api enforcedPlatform("com.fasterxml.jackson:jackson-bom:${jackson.version}") api enforcedPlatform("com.squareup.okhttp3:okhttp-bom:${okhttp3.version}") constraints { api ("io.netty:netty-bom:${netty.version}") api ("com.fasterxml.jackson:jackson-bom:${jackson.version}") api ("com.squareup.okhttp3:okhttp-bom:${okhttp3.version}") api 'com.google.guava:guava:30.1-jre' api "com.google.protobuf:protobuf-java:3.15.6" api "com.google.code.gson:gson:2.8.6" api "com.google.protobuf:protobuf-java-util:3.15.6" api "com.google.flatbuffers:flatbuffers-java:${flatbuffers.version}" api "org.projectlombok:lombok:1.18.28" /*Logging*/ api 'org.slf4j:slf4j-api:2.0.3' api 'org.slf4j:slf4j-simple:2.0.3' api "org.apache.logging.log4j:log4j-core:2.17.0" api "ch.qos.logback:logback-classic:1.2.3" api 'ch.qos.logback:logback-core:1.2.3' /* commons */ api 'commons-io:commons-io:2.5' api 'commons-codec:commons-codec:1.11' api 'commons-net:commons-net:3.6' api 'commons-collections:commons-collections:3.2.2' api 'org.apache.commons:commons-math3:3.6.1' api 'org.apache.commons:commons-lang3:3.9' api 'org.apache.commons:commons-compress:1.19' api 'org.apache.commons:commons-collections4:4.1' api "joda-time:joda-time:2.2" api "org.reflections:reflections:0.9.10" api 'org.springframework:spring-core:5.0.2.RELEASE' api "org.junit.jupiter:junit-jupiter-api:${junit.version}" api "org.junit.jupiter:junit-jupiter-engine:${junit.version}" api "org.junit.jupiter:junit-jupiter-params:${junit.version}" api 'com.jakewharton.byteunits:byteunits:0.9.1' api 'net.ericaro:neoitertools:1.0.0' api 'com.github.oshi:oshi-core:3.4.2' api 'com.github.oshi:oshi-json:3.4.2' api 'com.github.jai-imageio:jai-imageio-core:1.3.0' api 'com.twelvemonkeys.imageio:imageio-jpeg:3.1.1' api 'com.twelvemonkeys.imageio:imageio-tiff:3.1.1' api 'com.twelvemonkeys.imageio:imageio-psd:3.1.1' api 'com.twelvemonkeys.imageio:imageio-bmp:3.1.1' api('com.google.android:android:4.1.1.4') api "org.bytedeco:javacpp:${javacpp.version}" api "org.bytedeco:javacv:${javacv.version}" api "org.bytedeco:opencv:${opencv.version}-${javacpp.presetsVersion}" api "org.bytedeco:openblas:${openblas.version}-${javacpp.presetsVersion}" api "org.bytedeco:openblas-platform:${openblas.version}-${javacpp.presetsVersion}" api "org.bytedeco:leptonica-platform:${leptonica.version}-${javacpp.presetsVersion}" api "org.bytedeco:hdf5-platform:${hdf5.version}-${javacpp.presetsVersion}" api "org.bytedeco:hdf5:${hdf5.version}-${javacpp.presetsVersion}" api "org.bytedeco:hdf5:${hdf5.version}-${javacpp.presetsVersion}:${javacppPlatform}" api "org.bytedeco:cuda:${cuda.version}-${cudnn.version}-${javacpp.presetsVersion}" //api "org.bytedeco:cuda-platform-redist:${cuda.version}-${cudnn.version}-${javacpp.presetsVersion}" api "org.bytedeco:mkl:${mkl.version}-${javacpp.presetsVersion}" api "org.bytedeco:tensorflow:${tensorflow.version}-1.5.8" //not available for javacpp 1.5.9 ? api "org.bytedeco:tensorflow-platform:${tensorflow.version}-1.5.8" api "org.bytedeco:tensorflow-lite:${tensorflow_lite.version}-${javacpp.presetsVersion}" api "org.bytedeco:tensorflow-lite-platform:${tensorflow_lite.version}-${javacpp.presetsVersion}" api "org.bytedeco:tensorrt:${tensorrt.version}-${javacpp.presetsVersion}" api "org.bytedeco:tensorrt-platform:${tensorrt.version}-${javacpp.presetsVersion}" api "org.bytedeco:cpython:${cpython.version}-${javacpp.presetsVersion}:${javacppPlatform}" api "org.bytedeco:numpy:${numpy.version}-${javacpp.presetsVersion}:${javacppPlatform}" /* Apache Spark */ api "org.apache.spark:spark-core_${scalaVersion}:${spark.version}" api "org.apache.spark:spark-mllib_${scalaVersion}:${spark.version}" api "org.apache.spark:spark-sql_${scalaVersion}:${spark.version}" api "org.apache.hadoop:hadoop-client:3.2.0" api("org.scala-lang:scala-library:${scala.version}") { version { strictly "${scala.version}" because("Scala versions need to match, it is a mess otherwise.") } } api("org.scala-lang:scala-reflect:${scala.version}") { version { strictly "${scala.version}" because( "Scala versions need to match, it is a mess otherwise.") } } api("org.scala-lang:scala-compiler:${scala.version}") { version { strictly "${scala.version}" because( "Scala versions need to match, it is a mess otherwise.") } } api "org.agrona:agrona:1.12.0" } } tasks.withType(GenerateModuleMetadata).configureEach { // The value 'enforced-platform' is provided in the validation // error message you got suppressedValidationErrors.add('enforced-platform') }