You need to sign in or sign up before continuing.
Select Git revision
rlmodule.py
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
build.gradle 2.28 KiB
import java.util.concurrent.TimeUnit
plugins {
id("application")
id("java")
id("wrapper")
id("com.github.johnrengelman.shadow").version("7.1.2")
}
version = "1.4.1-SNAPSHOT"
final isSnapshot = project.version.endsWith("-SNAPSHOT")
final SOURCE_ENCODING = "UTF-8"
wrapper {
gradleVersion = "7.6"
}
repositories {
mavenCentral()
if (isSnapshot) {
maven {
name("Sonatype snapshots")
url("https://oss.sonatype.org/content/repositories/snapshots")
}
}
}
configurations.all {
resolutionStrategy {
cacheChangingModulesFor(0, TimeUnit.SECONDS)
}
}
dependencies {
implementation(group: "ch.qos.logback", name: "logback-classic", version: "1.3.7")
implementation(group: "com.google.guava", name: "guava", version: "31.1-jre")
implementation(group: "de.hhu.stups", name: "de.prob2.kernel", version: "4.12.1")
implementation(group: "io.github.spencerpark", name: "jupyter-jvm-basekernel", version: "2.3.0")
implementation(group: "org.jetbrains", name: "annotations", version: "24.0.1")
implementation(group: "se.sawano.java", name: "alphanumeric-comparator", version: "1.4.1")
}
java {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
tasks.withType(JavaCompile) {
options.encoding = SOURCE_ENCODING
}
def readCurrentGitCommit() {
def proc = ["git", "rev-parse", "HEAD"].execute(null, project.projectDir)
def exitCode = proc.waitFor()
if (exitCode != 0) {
throw new IllegalStateException("git rev-parse command exited with status code ${exitCode}:\n" + proc.err.readLines().join("\n"))
}
return proc.in.readLines()[0]
}
final currentGitCommit = readCurrentGitCommit()
processResources {
inputs.property("project.version", project.version)
inputs.property("currentGitCommit", currentGitCommit)
filesMatching("de/prob2/jupyter/build.properties") {
expand(version: project.version, commit: readCurrentGitCommit())
}
}
application {
mainClass = "de.prob2.jupyter.Main"
}
task installKernelSpec(type: Exec) {
dependsOn = [shadowJar]
executable = project.hasProperty("pythonCommand") ? project.pythonCommand : "python3"
args = [shadowJar.archiveFile.get().asFile, "--jar-path=" + shadowJar.archiveFile.get().asFile, "install"]
if (project.hasProperty("kernelspecUserInstall") && project.kernelspecUserInstall == "true") {
args("--user")
}
}