This repository has been archived on 2025-01-04. You can view files and clone it, but cannot push or open issues or pull requests.
NightTrainToBudapest/build.gradle
2022-03-25 17:22:35 +01:00

71 lines
1.9 KiB
Groovy

plugins {
id 'java-library'
id 'application'
id 'org.openjfx.javafxplugin' version '0.0.10'
id 'jacoco'
}
javafx {
version = "11.0.2"
modules = ['javafx.controls', 'javafx.fxml', 'javafx.base']
}
group 'ch.unibas.dmi.dbis'
version '0.0.1-ALPHA'
mainClassName = 'ch.unibas.dmi.dbis.cs108.example.HelloWorld'
java {
toolchain {
languageVersion = JavaLanguageVersion.of(11)
}
}
//adds maven central as a maven repository
repositories {
mavenCentral()
}
/* The following lines are extensively documented. Please remove the documentation when you have read and understood it. */
dependencies {
// EXAMPLE: LOGGING
/*
The following adds the logging framework Apache Log4J2.
The statements serve as an example on how to use libraries.
Since these are `implementation` dependencies, they are packed in the final jar.
Read the documentation at https://docs.gradle.org/current/userguide/declaring_dependencies.html to learn more
*/
//implementation 'org.apache.logging.log4j:log4j-api:2.+'
//implementation 'org.apache.logging.log4j:log4j-core:2.+'
/*
This is another example - it imports the javafx-controls dependency
*/
implementation 'org.openjfx:javafx-controls:17.0.2'
// JUNIT
/*
The following dependency is required to perform JUnit tests, as for example HelloWorldTest.
Since it is a `testCompile` dependency, it will not be part of the final product, only during testing.
*/
testImplementation('org.junit.jupiter:junit-jupiter:5.8.2')
}
test {
useJUnitPlatform()
}
/*
The following block adds both compile and runtime dependencies to the jar
*/
jar {
manifest {
attributes(
'Main-Class': mainClassName
)
}
from {
configurations.compileClasspath.collect { it.isDirectory() ? it : zipTree(it) }
configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) }
}
}