1919plugins {
2020 id ' application'
2121 id ' org.openjfx.javafxplugin' version ' 0.1.0'
22- id ' org.javamodularity.moduleplugin' version ' 1.8.12 '
23- id ' com.github.ben-manes.versions' version ' 0.49 .0'
22+ id ' org.javamodularity.moduleplugin' version ' 1.8.15 '
23+ id ' com.github.ben-manes.versions' version ' 0.51 .0'
2424 id ' org.beryx.jlink' version ' 3.0.1'
2525 id ' jacoco'
26- id ' net.ltgt.errorprone' version ' 3.1.0 '
27- id ' org.sonarqube' version ' 4.4.1.3373 '
26+ id ' net.ltgt.errorprone' version ' 4.0.1 '
27+ id ' org.sonarqube' version ' 5.1.0.4882 '
2828 id ' org.ysb33r.cloudci' version ' 4.0.0'
2929 id ' com.github.hierynomus.license' version ' 0.16.1'
3030 id ' io.miret.etienne.sass' version ' 1.5.0'
31+ id " com.ryandens.javaagent-test" version " 0.5.1"
3132}
3233
3334group ' com.github.mfl28'
@@ -39,15 +40,16 @@ repositories {
3940
4041dependencies {
4142 // Junit (Unit testing)
42- testImplementation ' org.junit.jupiter:junit-jupiter:5.10.0'
43+ testImplementation ' org.junit.jupiter:junit-jupiter:5.10.3'
44+ testRuntimeOnly ' org.junit.platform:junit-platform-launcher'
4345
4446 // TestFx UI TesTing // https://mvnrepository.com/artifact/org.testfx/testfx-junit5
45- testImplementation(' org.testfx:testfx-junit5:4.0.17 ' ) {
47+ testImplementation(' org.testfx:testfx-junit5:4.0.18 ' ) {
4648 exclude group : ' org.hamcrest'
4749 }
4850
4951 // https://mvnrepository.com/artifact/nl.jqno.equalsverifier/equalsverifier
50- testImplementation ' nl.jqno.equalsverifier:equalsverifier:3.15.2 '
52+ testImplementation ' nl.jqno.equalsverifier:equalsverifier:3.16.1 '
5153
5254 // Hamcrest https://mvnrepository.com/artifact/org.hamcrest/hamcrest
5355 testImplementation ' org.hamcrest:hamcrest:2.2'
@@ -56,65 +58,67 @@ dependencies {
5658 testImplementation ' org.mockito:mockito-inline:5.2.0'
5759
5860 // Mockito-Junit https://mvnrepository.com/artifact/org.mockito/mockito-junit-jupiter
59- testImplementation ' org.mockito:mockito-junit-jupiter:5.6 .0'
61+ testImplementation ' org.mockito:mockito-junit-jupiter:5.12 .0'
6062
6163 testImplementation ' com.google.jimfs:jimfs:1.3.0'
6264
65+ testJavaagent " net.bytebuddy:byte-buddy-agent:1.14.18"
66+
6367 // Commons Collections https://mvnrepository.com/artifact/org.apache.commons/commons-collections4
6468 implementation ' org.apache.commons:commons-collections4:4.4'
6569
6670 // Commons Lang https://mvnrepository.com/artifact/org.apache.commons/commons-lang3
67- implementation ' org.apache.commons:commons-lang3:3.13 .0'
71+ implementation ' org.apache.commons:commons-lang3:3.14 .0'
6872
6973 // https://mvnrepository.com/artifact/commons-io/commons-io
70- implementation ' commons-io:commons-io:2.15.0 '
74+ implementation ' commons-io:commons-io:2.16.1 '
7175
7276 // ControlsFX https://mvnrepository.com/artifact/org.controlsfx/controlsfx
73- implementation(' org.controlsfx:controlsfx:11.1.2 ' ) {
77+ implementation(' org.controlsfx:controlsfx:11.2.1 ' ) {
7478 exclude group : ' org.openjfx'
7579 }
7680
7781 // Caffeine https://mvnrepository.com/artifact/com.github.ben-manes.caffeine/caffeine
7882 implementation ' com.github.ben-manes.caffeine:caffeine:3.1.8'
7983
8084 // Gradle plugin to use the error-prone compiler https://github.com/tbroyer/gradle-errorprone-plugin
81- errorprone ' com.google.errorprone:error_prone_core:2.23 .0'
85+ errorprone ' com.google.errorprone:error_prone_core:2.28 .0'
8286
8387 // Google GSON https://github.com/google/gson
84- implementation ' com.google.code.gson:gson:2.10.1 '
88+ implementation ' com.google.code.gson:gson:2.11.0 '
8589
8690 // Jersey REST client https://mvnrepository.com/artifact/org.glassfish.jersey.core/jersey-client
87- implementation ' org.glassfish.jersey.core:jersey-client:3.1.3 '
91+ implementation ' org.glassfish.jersey.core:jersey-client:3.1.7 '
8892
8993 // HK2 InjectionManager https://mvnrepository.com/artifact/org.glassfish.jersey.inject/jersey-hk2
90- implementation ' org.glassfish.jersey.inject:jersey-hk2:3.1.3 '
94+ implementation ' org.glassfish.jersey.inject:jersey-hk2:3.1.7 '
9195
9296 // Jersey Multipart https://mvnrepository.com/artifact/org.glassfish.jersey.media/jersey-media-multipart
93- implementation ' org.glassfish.jersey.media:jersey-media-multipart:3.1.3 '
97+ implementation ' org.glassfish.jersey.media:jersey-media-multipart:3.1.7 '
9498
9599 // Jaxb runtime https://mvnrepository.com/artifact/org.glassfish.jaxb/jaxb-runtime
96- implementation ' org.glassfish.jaxb:jaxb-runtime:4.0.4 '
100+ implementation ' org.glassfish.jaxb:jaxb-runtime:4.0.5 '
97101
98102 // Mimepull https://mvnrepository.com/artifact/org.jvnet.mimepull/mimepull
99103 implementation ' org.jvnet.mimepull:mimepull:1.10.0'
100104
101105 // Xml bind https://mvnrepository.com/artifact/jakarta.xml.bind/jakarta.xml.bind-api
102- implementation ' jakarta.xml.bind:jakarta.xml.bind-api:4.0.1 '
106+ implementation ' jakarta.xml.bind:jakarta.xml.bind-api:4.0.2 '
103107
104108 // https://mvnrepository.com/artifact/jakarta.ws.rs/jakarta.ws.rs-api
105- implementation ' jakarta.ws.rs:jakarta.ws.rs-api:3.1 .0'
109+ implementation ' jakarta.ws.rs:jakarta.ws.rs-api:4.0 .0'
106110
107111 // https://mvnrepository.com/artifact/org.locationtech.jts/jts-core
108112 implementation ' org.locationtech.jts:jts-core:1.19.0'
109113
110114 // https://mvnrepository.com/artifact/com.drewnoakes/metadata-extractor
111- implementation ' com.drewnoakes:metadata-extractor:2.18 .0'
115+ implementation ' com.drewnoakes:metadata-extractor:2.19 .0'
112116
113117 implementation ' com.opencsv:opencsv:5.9'
114118}
115119
116120javafx {
117- version = ' 21 .0.1'
121+ version = ' 22 .0.1'
118122 modules = [' javafx.base' , ' javafx.graphics' , ' javafx.controls' , ' javafx.swing' ]
119123}
120124
@@ -168,7 +172,7 @@ tasks.named("dependencyUpdates").configure {
168172}
169173
170174compileSass {
171- outputDir = project . file (" ${ buildDir } / resources/main/stylesheets/css" )
175+ outputDir = layout . buildDirectory . file (" resources/main/stylesheets/css" ). get() . asFile
172176 destPath = " ."
173177 sourceDir = project. file (" ${ projectDir} /src/main/resources/stylesheets/scss" )
174178 style = expanded
@@ -199,12 +203,12 @@ application {
199203java {
200204 modularity. inferModulePath = false
201205 toolchain {
202- languageVersion. set(JavaLanguageVersion . of(17 ))
206+ languageVersion. set(JavaLanguageVersion . of(21 ))
203207 }
204208}
205209
206210jlink {
207- options = [' --strip-debug' , ' --compress' , ' 2 ' , ' --no-header-files' , ' --no-man-pages' ]
211+ options = [' --strip-debug' , ' --compress' , ' zip-6 ' , ' --no-header-files' , ' --no-man-pages' ]
208212 launcher {
209213 name = ' BoundingBoxEditor'
210214 jvmArgs = [' -Dprism.forceGPU=true' , ' -Djava.net.preferIPv6Addresses=system' ]
@@ -218,7 +222,7 @@ jlink {
218222 uses ' jakarta.ws.rs.ext.RuntimeDelegate'
219223 }
220224
221- imageZip = project . file(" ${ buildDir } / distributions/boundingboxeditor-${ javafx.platform.classifier} .zip" )
225+ imageZip = layout . buildDirectory . file(" distributions/boundingboxeditor-${ javafx.platform.classifier} .zip" )
222226
223227 jpackage {
224228 installerOptions + = [
@@ -258,7 +262,7 @@ jlink {
258262 }
259263}
260264
261- task dist {
265+ tasks . register( ' dist' ) {
262266 dependsOn clean, jlinkZip
263267}
264268
0 commit comments