aboutsummaryrefslogtreecommitdiff
path: root/build.gradle
diff options
context:
space:
mode:
authorYuuta Liang <yuutaw@student.cs.ubc.ca>2023-11-27 13:03:18 -0800
committerYuuta Liang <yuutaw@student.cs.ubc.ca>2023-11-27 13:03:18 -0800
commit97402510dc9f593cf3394a38c140059af20b0372 (patch)
tree259240c58bbf3d1807169f0b4b4714734d9a7918 /build.gradle
parenteffe2de5cb2d46481e3966e24b79f1b5e4763dc8 (diff)
downloadjca-97402510dc9f593cf3394a38c140059af20b0372.tar
jca-97402510dc9f593cf3394a38c140059af20b0372.tar.gz
jca-97402510dc9f593cf3394a38c140059af20b0372.tar.bz2
jca-97402510dc9f593cf3394a38c140059af20b0372.zip
Add Gradle build files
Signed-off-by: Yuuta Liang <yuutaw@student.cs.ubc.ca>
Diffstat (limited to 'build.gradle')
-rw-r--r--build.gradle63
1 files changed, 63 insertions, 0 deletions
diff --git a/build.gradle b/build.gradle
new file mode 100644
index 0000000..0976673
--- /dev/null
+++ b/build.gradle
@@ -0,0 +1,63 @@
+plugins {
+ id 'application'
+ id 'jacoco'
+}
+
+application {
+ mainClass = 'ui.Main'
+}
+
+repositories {
+ mavenCentral()
+}
+
+sourceSets {
+ main {
+ java {
+ srcDirs 'src/main/'
+ }
+ resources {
+ srcDirs 'src/resources/'
+ }
+ }
+ test {
+ java {
+ srcDirs 'src/test/'
+ }
+ }
+}
+
+dependencies {
+ implementation files('lib/spec/flatlaf-3.2.5.jar')
+ implementation files('lib/spec/flatlaf-intellij-themes-3.2.5.jar')
+ implementation files('lib/spec/json-20231013.jar')
+ implementation files('lib/spec/zxing-3.5.2.jar')
+
+ testImplementation files('lib/apiguardian-api-1.1.2.jar')
+ testImplementation files('lib/junit-jupiter-5.8.1.jar')
+ testImplementation files('lib/junit-jupiter-api-5.8.1.jar')
+ testImplementation files('lib/junit-jupiter-engine-5.8.1.jar')
+ testImplementation files('lib/junit-jupiter-params-5.8.1.jar')
+ testImplementation files('lib/junit-platform-commons-1.8.1.jar')
+ testImplementation files('lib/junit-platform-engine-1.8.1.jar')
+ testImplementation files('lib/opentest4j-1.2.0.jar')
+}
+
+test {
+ useJUnitPlatform()
+ finalizedBy jacocoTestReport
+}
+
+jacocoTestReport {
+ dependsOn test
+ reports {
+ xml.required = false
+ csv.required = false
+ html.outputLocation = layout.buildDirectory.dir('jacocoHtml')
+ }
+ afterEvaluate {
+ classDirectories = files(classDirectories.files.collect {
+ fileTree(dir: it, exclude: ['ui/**'])
+ })
+ }
+}