Skip to content

Commit 942e145

Browse files
committed
Streamline Gradle build scripts: using the Spring Dependency Management Plugin to manage dependencies and versions
Closes gh-51
1 parent 798bc59 commit 942e145

File tree

10 files changed

+65
-67
lines changed

10 files changed

+65
-67
lines changed

build.gradle

Lines changed: 24 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ buildscript {
1010
}
1111
dependencies {
1212
classpath "io.github.gradle-nexus:publish-plugin:2.0.0"
13+
classpath "io.spring.gradle:dependency-management-plugin:$dependencyManagementPluginVersion"
1314
}
1415
}
1516

@@ -54,29 +55,40 @@ subprojects {
5455
apply plugin: "signing"
5556
apply plugin: "checkstyle"
5657
apply plugin: "codenarc"
58+
apply plugin: "io.spring.dependency-management"
59+
60+
dependencyManagement {
61+
imports {
62+
mavenBom "org.graceframework:grace-bom:$graceVersion"
63+
}
64+
applyMavenExclusions false
65+
generatedPomCustomization {
66+
enabled = false
67+
}
68+
}
5769

5870
configurations {
5971
documentation
6072
}
6173

6274
dependencies {
63-
api "org.apache.groovy:groovy:$groovyVersion"
64-
testImplementation "org.apache.groovy:groovy-test-junit5:$groovyVersion"
65-
testImplementation "org.junit.jupiter:junit-jupiter-api:$junitJupiterVersion"
66-
testImplementation "org.junit.jupiter:junit-jupiter-engine:$junitJupiterVersion"
67-
testImplementation "org.junit.platform:junit-platform-runner:$junitJupiterPlatformVersion"
68-
testImplementation("org.spockframework:spock-core:$spockVersion") { transitive = false }
75+
api "org.apache.groovy:groovy"
76+
testImplementation "org.apache.groovy:groovy-test-junit5"
77+
testImplementation "org.junit.jupiter:junit-jupiter-api"
78+
testImplementation "org.junit.jupiter:junit-jupiter-engine"
79+
testImplementation "org.junit.platform:junit-platform-runner"
80+
testImplementation("org.spockframework:spock-core") { transitive = false }
6981

7082
if (project.name == "grace-datastore-gorm-tck") {
71-
api "org.apache.groovy:groovy-test-junit5:$groovyVersion"
72-
api "org.junit.jupiter:junit-jupiter-api:$junitJupiterVersion"
73-
api "org.junit.platform:junit-platform-runner:$junitJupiterPlatformVersion"
74-
runtimeOnly "org.junit.jupiter:junit-jupiter-engine:$junitJupiterVersion"
75-
implementation("org.spockframework:spock-core:$spockVersion") { transitive = false }
83+
api "org.apache.groovy:groovy-test-junit5"
84+
api "org.junit.jupiter:junit-jupiter-api"
85+
api "org.junit.platform:junit-platform-runner"
86+
runtimeOnly "org.junit.jupiter:junit-jupiter-engine"
87+
implementation("org.spockframework:spock-core") { transitive = false }
7688
}
7789

7890
documentation "org.fusesource.jansi:jansi:2.4.0"
79-
documentation "org.apache.groovy:groovy-dateutil:$groovyVersion"
91+
documentation "org.apache.groovy:groovy-dateutil"
8092
documentation 'info.picocli:picocli:4.6.3'
8193
documentation ("com.github.javaparser:javaparser-core:$javaParserCoreVersion")
8294
}

grace-datastore-async/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
dependencies {
2-
api "org.graceframework:grace-async-core:$graceAsyncVersion"
2+
api "org.graceframework:grace-async-core"
33
}

grace-datastore-core/build.gradle

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
dependencies {
2-
api "jakarta.annotation:jakarta.annotation-api:$javaAnnotationApiVersion"
3-
api "jakarta.transaction:jakarta.transaction-api:$jtaVersion"
4-
api "org.slf4j:slf4j-api:$slf4jVersion"
5-
api "org.slf4j:jcl-over-slf4j:$slf4jVersion"
6-
api "jakarta.persistence:jakarta.persistence-api:$jpaVersion"
7-
api "org.springframework:spring-core:$springVersion"
8-
api "org.springframework:spring-beans:$springVersion"
9-
api "org.springframework:spring-tx:$springVersion"
10-
api "org.springframework:spring-context:$springVersion"
11-
implementation "com.github.ben-manes.caffeine:caffeine:$caffeineVersion"
2+
api "jakarta.annotation:jakarta.annotation-api"
3+
api "jakarta.transaction:jakarta.transaction-api"
4+
api "org.slf4j:slf4j-api"
5+
api "org.slf4j:jcl-over-slf4j"
6+
api "jakarta.persistence:jakarta.persistence-api"
7+
api "org.springframework:spring-core"
8+
api "org.springframework:spring-beans"
9+
api "org.springframework:spring-tx"
10+
api "org.springframework:spring-context"
11+
implementation "com.github.ben-manes.caffeine:caffeine"
1212
implementation "org.javassist:javassist:$javassistVersion"
1313

1414
testImplementation project(":grace-datastore-gorm")
15-
testImplementation("org.springframework:spring-context:$springVersion")
16-
testImplementation("org.springframework:spring-web:$springVersion")
15+
testImplementation("org.springframework:spring-context")
16+
testImplementation("org.springframework:spring-web")
1717
}

grace-datastore-gorm-support/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
dependencies {
22
api project(':grace-datastore-gorm')
3-
api "org.graceframework:grace-core:$graceVersion", {
3+
api "org.graceframework:grace-core", {
44
exclude group: 'org.graceframework', module: 'grace-datastore-core'
55
}
6-
api("org.graceframework:grace-bootstrap:$graceVersion")
6+
api("org.graceframework:grace-bootstrap")
77
}
88

99
project.tasks.withType(Jar) {

grace-datastore-gorm-tck/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
dependencies {
22
api project(":grace-datastore-gorm-async")
33
api project(":grace-datastore-gorm-support")
4-
runtimeOnly "org.apache.groovy:groovy-dateutil:$groovyVersion"
4+
runtimeOnly "org.apache.groovy:groovy-dateutil"
55
}
66

77
//compileGroovy.groovyOptions.fork = false

grace-datastore-gorm-test/build.gradle

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@ dependencies {
22
api project(":grace-datastore-gorm"),
33
project(":grace-datastore-core")
44

5-
implementation "com.github.ben-manes.caffeine:caffeine:$caffeineVersion"
5+
implementation "com.github.ben-manes.caffeine:caffeine"
66
testImplementation project(":grace-datastore-gorm-tck")
7-
testImplementation "org.apache.groovy:groovy-json:$groovyVersion"
8-
testRuntimeOnly "org.springframework:spring-aop:$springVersion"
7+
testImplementation "org.apache.groovy:groovy-json"
8+
testRuntimeOnly "org.springframework:spring-aop"
99
testRuntimeOnly "log4j:log4j:1.2.17"
1010
}
1111

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
dependencies {
22
api project(":grace-datastore-core")
3-
api "commons-validator:commons-validator:$commonsValidatorVersion", {
3+
api "commons-validator:commons-validator", {
44
exclude group: 'xml-apis', module:'xml-apis'
55
exclude group: 'commons-digester', module:'commons-digester'
66
exclude group: 'commons-logging', module:'commons-logging'
77
exclude group: 'commons-beanutils', module:'commons-beanutils'
88
}
99

10-
compileOnly("org.hibernate.validator:hibernate-validator:$hibernateValidatorVersion")
11-
testImplementation("org.hibernate.validator:hibernate-validator:$hibernateValidatorVersion")
10+
compileOnly("org.hibernate.validator:hibernate-validator")
11+
testImplementation("org.hibernate.validator:hibernate-validator")
1212
}

grace-datastore-gorm/build.gradle

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,22 @@ dependencies {
22
api project(":grace-datastore-core")
33
api project(":grace-datastore-gorm-validation")
44

5-
implementation "org.slf4j:slf4j-api:$slf4jVersion"
6-
compileOnly("jakarta.el:jakarta.el-api:$elApiVersion")
7-
compileOnly("jakarta.validation:jakarta.validation-api:$jakartaValidationVersion")
8-
compileOnly("org.hibernate.validator:hibernate-validator:$hibernateValidatorVersion")
9-
compileOnly("org.springframework:spring-core:$springVersion")
10-
compileOnly("org.springframework:spring-jdbc:$springVersion")
11-
compileOnly("org.springframework:spring-web:$springVersion")
12-
testImplementation "org.graceframework:grace-core:$graceVersion", {
5+
implementation "org.slf4j:slf4j-api"
6+
compileOnly("jakarta.el:jakarta.el-api")
7+
compileOnly("jakarta.validation:jakarta.validation-api")
8+
compileOnly("org.hibernate.validator:hibernate-validator")
9+
compileOnly("org.springframework:spring-core")
10+
compileOnly("org.springframework:spring-jdbc")
11+
compileOnly("org.springframework:spring-web")
12+
testImplementation "org.graceframework:grace-core", {
1313
exclude group: 'org.graceframework', module: 'grace-datastore-core'
1414
}
15-
testImplementation("org.springframework:spring-jdbc:$springVersion")
16-
testImplementation("org.hibernate.validator:hibernate-validator:$hibernateValidatorVersion")
17-
testImplementation("jakarta.el:jakarta.el-api:$elApiVersion")
18-
testImplementation("jakarta.validation:jakarta.validation-api:$jakartaValidationVersion")
15+
testImplementation("org.springframework:spring-jdbc")
16+
testImplementation("org.hibernate.validator:hibernate-validator")
17+
testImplementation("jakarta.el:jakarta.el-api")
18+
testImplementation("jakarta.validation:jakarta.validation-api")
1919
testRuntimeOnly("org.glassfish:jakarta.el:$elImplVersion")
20-
testRuntimeOnly("com.h2database:h2:$h2Version")
20+
testRuntimeOnly("com.h2database:h2")
2121
}
2222

2323
//compileGroovy.groovyOptions.forkOptions.jvmArgs = ['-Xdebug', '-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005']

grace-datastore-web/build.gradle

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
dependencies {
22
api project(":grace-datastore-core")
3-
api "org.springframework:spring-web:$springVersion"
4-
api "org.springframework:spring-context:$springVersion"
5-
compileOnly("jakarta.servlet:jakarta.servlet-api:$servletApiVersion")
3+
api "org.springframework:spring-web"
4+
api "org.springframework:spring-context"
5+
compileOnly("jakarta.servlet:jakarta.servlet-api")
66

7-
testImplementation("jakarta.servlet:jakarta.servlet-api:$servletApiVersion")
8-
testImplementation "org.springframework:spring-test:$springVersion"
7+
testImplementation("jakarta.servlet:jakarta.servlet-api")
8+
testImplementation "org.springframework:spring-test"
99
}

gradle.properties

Lines changed: 1 addition & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -4,27 +4,13 @@ projectUrl=https://github.com/graceframework/grace-data
44
projectVersion=2023.3.0-SNAPSHOT
55
githubSlug=graceframework/grace-data
66
developers=Michael Yan
7-
caffeineVersion=3.1.8
87
commonsValidatorVersion=1.9.0
9-
elApiVersion=4.0.0
8+
dependencyManagementPluginVersion=1.1.7
109
elImplVersion=4.0.2
11-
graceAsyncVersion=6.3.0-RC1
1210
graceVersion=2023.3.0-RC1
1311
groovyVersion=4.0.26
14-
h2Version=2.2.224
15-
hibernateValidatorVersion=8.0.2.Final
16-
jakartaValidationVersion=3.0.2
17-
javaAnnotationApiVersion=2.1.1
1812
javaParserCoreVersion=3.26.2
1913
javassistVersion=3.30.2-GA
20-
jpaVersion=3.1.0
21-
jtaVersion=2.0.1
22-
junitJupiterVersion=5.10.5
23-
junitJupiterPlatformVersion=1.10.5
24-
servletApiVersion=6.0.0
25-
slf4jVersion=2.0.17
26-
spockVersion=2.3-groovy-4.0
27-
springVersion=6.1.18
2814

2915
org.gradle.caching=true
3016
org.gradle.parallel=true

0 commit comments

Comments
 (0)