diff --git a/build.gradle b/build.gradle index 50fdc92..1c08a8a 100644 --- a/build.gradle +++ b/build.gradle @@ -1,12 +1,27 @@ +ext { + versions = [ + json: '20230227', // org.json:json + snakeyaml: '1.20', // org.yaml:snakeyaml + okhttp: '3.8.1', // com.squareup.okhttp3:okhttp + socket: '1.0.2', // io.socket:socket.io-client + jline: '2.14.5', // jline:jline + + junit: '5.9.2', // org.junit:junit-bom + jmh: '1.37' // org.openjdk.jmh:jmh-core + ] +} + allprojects { repositories { mavenCentral() } gradle.projectsEvaluated { - tasks.withType(JavaCompile) { - [compileJava, compileTestJava]*.options*.encoding = 'UTF-8' - options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation" + tasks.withType(JavaCompile).tap { + configureEach { + [compileJava, compileTestJava]*.options*.encoding = 'UTF-8' + options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation" + } } } } diff --git a/modules/main/build.gradle b/modules/main/build.gradle index f4e3e04..ac3fdd0 100644 --- a/modules/main/build.gradle +++ b/modules/main/build.gradle @@ -9,14 +9,14 @@ version = '2.0-SNAPSHOT' dependencies { api project(":ownlang-core") - implementation 'com.squareup.okhttp3:okhttp:3.8.1' - implementation ('io.socket:socket.io-client:1.0.2') { + implementation "com.squareup.okhttp3:okhttp:${versions.okhttp}" + implementation ("io.socket:socket.io-client:${versions.socket}") { exclude group: 'org.json', module: 'json' } - implementation 'org.json:json:20230227' - implementation 'org.yaml:snakeyaml:1.20' + implementation "org.json:json:${versions.json}" + implementation "org.yaml:snakeyaml:${versions.snakeyaml}" - testImplementation platform('org.junit:junit-bom:5.9.2') + testImplementation platform("org.junit:junit-bom:${versions.junit}") testImplementation 'org.junit.jupiter:junit-jupiter' } diff --git a/ownlang-core/build.gradle b/ownlang-core/build.gradle index af68609..96e8bfb 100644 --- a/ownlang-core/build.gradle +++ b/ownlang-core/build.gradle @@ -6,9 +6,9 @@ group = 'com.annimon' version = '2.0-SNAPSHOT' dependencies { - implementation 'org.json:json:20230227' + implementation "org.json:json:${versions.json}" - testImplementation platform('org.junit:junit-bom:5.9.2') + testImplementation platform("org.junit:junit-bom:${versions.junit}") testImplementation 'org.junit.jupiter:junit-jupiter' } diff --git a/ownlang-desktop/build.gradle b/ownlang-desktop/build.gradle index 93ff3a0..87751b5 100644 --- a/ownlang-desktop/build.gradle +++ b/ownlang-desktop/build.gradle @@ -1,4 +1,5 @@ plugins { + id 'com.github.johnrengelman.shadow' version '8.1.1' id 'java' id 'application' } @@ -16,7 +17,7 @@ dependencies { implementation project(":ownlang-utils") implementation project(":modules:main") - testImplementation platform('org.junit:junit-bom:5.9.2') + testImplementation platform("org.junit:junit-bom:${versions.junit}") testImplementation 'org.junit.jupiter:junit-jupiter' } diff --git a/ownlang-parser/build.gradle b/ownlang-parser/build.gradle index b380dd7..5e06268 100644 --- a/ownlang-parser/build.gradle +++ b/ownlang-parser/build.gradle @@ -6,13 +6,14 @@ group = 'com.annimon' version = '2.0-SNAPSHOT' dependencies { - api project(":ownlang-core") + api project(':ownlang-core') - testImplementation platform('org.junit:junit-bom:5.9.2') - testImplementation 'org.junit.jupiter:junit-jupiter-params:5.9.2' + testImplementation project(':modules:main') + testImplementation platform("org.junit:junit-bom:${versions.junit}") + testImplementation "org.junit.jupiter:junit-jupiter-params:${versions.junit}" testImplementation 'org.junit.jupiter:junit-jupiter' - testImplementation 'org.openjdk.jmh:jmh-core:1.37' - testImplementation 'org.openjdk.jmh:jmh-generator-annprocess:1.37' + testImplementation "org.openjdk.jmh:jmh-core:${versions.jmh}" + testImplementation "org.openjdk.jmh:jmh-generator-annprocess:${versions.jmh}" } test { diff --git a/ownlang-utils/build.gradle b/ownlang-utils/build.gradle index 389808e..8a12b43 100644 --- a/ownlang-utils/build.gradle +++ b/ownlang-utils/build.gradle @@ -7,11 +7,11 @@ version = '2.0-SNAPSHOT' dependencies { api project(":ownlang-parser") - implementation 'org.json:json:20230227' - implementation 'org.yaml:snakeyaml:1.20' - implementation 'jline:jline:2.14.5' + implementation "org.json:json:${versions.json}" + implementation "org.yaml:snakeyaml:${versions.snakeyaml}" + implementation "jline:jline:${versions.jline}" - testImplementation platform('org.junit:junit-bom:5.9.2') + testImplementation platform("org.junit:junit-bom:${versions.junit}") testImplementation 'org.junit.jupiter:junit-jupiter' }