Skip to content

Commit cfce3d0

Browse files
committed
Some build.gradle optimization
* Move `api project(':spring-integration-core')` to the common `dependencies` section * Remove redundant `exclude group: 'org.springframework'` * Add some required deps for `CassandraContainer`
1 parent 87a0705 commit cfce3d0

File tree

1 file changed

+16
-68
lines changed

1 file changed

+16
-68
lines changed

build.gradle

Lines changed: 16 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -260,6 +260,10 @@ configure(javaProjects) { subproject ->
260260
}
261261
}
262262

263+
if (!(subproject.name !in ['spring-integration-test-support', 'spring-integration-core'])) {
264+
api project(':spring-integration-core')
265+
}
266+
263267
// JSR-305 only used for non-required meta-annotations
264268
compileOnly "com.google.code.findbugs:annotations:$findbugsVersion"
265269
testImplementation "com.google.code.findbugs:annotations:$findbugsVersion"
@@ -472,17 +476,10 @@ project('spring-integration-test-support') {
472476
project('spring-integration-amqp') {
473477
description = 'Spring Integration AMQP Support'
474478
dependencies {
475-
api project(':spring-integration-core')
476-
api('org.springframework.amqp:spring-rabbit') {
477-
exclude group: 'org.springframework'
478-
}
479-
optionalApi('org.springframework.amqp:spring-rabbit-stream') {
480-
exclude group: 'org.springframework'
481-
}
479+
api 'org.springframework.amqp:spring-rabbit'
480+
optionalApi 'org.springframework.amqp:spring-rabbit-stream'
482481

483-
testImplementation('org.springframework.amqp:spring-rabbit-junit') {
484-
exclude group: 'org.springframework'
485-
}
482+
testImplementation 'org.springframework.amqp:spring-rabbit-junit'
486483
testImplementation project(':spring-integration-stream')
487484
testImplementation 'org.springframework:spring-web'
488485
testImplementation 'org.testcontainers:rabbitmq'
@@ -494,7 +491,6 @@ project('spring-integration-camel') {
494491
description = 'Spring Integration support for Apache Camel'
495492

496493
dependencies {
497-
api project(':spring-integration-core')
498494
api 'org.apache.camel:camel-core-model'
499495

500496
testImplementation 'org.apache.camel:camel-test-junit5'
@@ -508,12 +504,10 @@ project('spring-integration-cassandra') {
508504
description = 'Spring Integration Support for Apache Cassandra'
509505

510506
dependencies {
511-
api project(':spring-integration-core')
512507
api 'org.springframework.data:spring-data-cassandra'
513508

514-
testImplementation('org.testcontainers:cassandra') {
515-
exclude group: 'com.datastax.cassandra'
516-
}
509+
testImplementation 'org.testcontainers:cassandra'
510+
testRuntimeOnly "commons-io:commons-io:$commonsIoVersion"
517511
}
518512
}
519513

@@ -585,7 +579,6 @@ project('spring-integration-core') {
585579
project('spring-integration-debezium') {
586580
description = 'Spring Integration Debezium Support'
587581
dependencies {
588-
api project(':spring-integration-core')
589582
api("io.debezium:debezium-embedded:$debeziumVersion") {
590583
exclude group: 'org.glassfish.jersey.containers', module: 'jersey-container-servlet'
591584
exclude group: 'org.glassfish.jersey.inject', module: 'jersey-hk2'
@@ -601,23 +594,18 @@ project('spring-integration-debezium') {
601594

602595
project('spring-integration-event') {
603596
description = 'Spring Integration ApplicationEvent Support'
604-
dependencies {
605-
api project(':spring-integration-core')
606-
}
607597
}
608598

609599
project('spring-integration-feed') {
610600
description = 'Spring Integration RSS Feed Support'
611601
dependencies {
612-
api project(':spring-integration-core')
613602
api "com.rometools:rome:$romeToolsVersion"
614603
}
615604
}
616605

617606
project('spring-integration-file') {
618607
description = 'Spring Integration File Support'
619608
dependencies {
620-
api project(':spring-integration-core')
621609
api "commons-io:commons-io:$commonsIoVersion"
622610

623611
testImplementation project(':spring-integration-redis')
@@ -645,7 +633,6 @@ project('spring-integration-ftp') {
645633
project('spring-integration-graphql') {
646634
description = 'Spring Integration GraphQL Support'
647635
dependencies {
648-
api project(':spring-integration-core')
649636
api "org.springframework.graphql:spring-graphql:$springGraphqlVersion"
650637

651638
testImplementation 'org.springframework:spring-web'
@@ -676,7 +663,6 @@ project('spring-integration-groovy') {
676663
project('spring-integration-hazelcast') {
677664
description = 'Spring Integration Hazelcast Support'
678665
dependencies {
679-
api project(':spring-integration-core')
680666
api "com.hazelcast:hazelcast:$hazelcastVersion"
681667

682668
testImplementation project(':spring-integration-jmx')
@@ -696,7 +682,6 @@ project('spring-integration-hazelcast') {
696682
project('spring-integration-http') {
697683
description = 'Spring Integration HTTP Support'
698684
dependencies {
699-
api project(':spring-integration-core')
700685
api 'org.springframework:spring-webmvc'
701686
providedImplementation "jakarta.servlet:jakarta.servlet-api:$servletApiVersion"
702687
optionalApi "com.rometools:rome:$romeToolsVersion"
@@ -715,7 +700,6 @@ project('spring-integration-http') {
715700
project('spring-integration-ip') {
716701
description = 'Spring Integration IP Support'
717702
dependencies {
718-
api project(':spring-integration-core')
719703
testImplementation project(':spring-integration-stream')
720704
testImplementation project(':spring-integration-event')
721705

@@ -732,7 +716,6 @@ project('spring-integration-ip') {
732716
project('spring-integration-jdbc') {
733717
description = 'Spring Integration JDBC Support'
734718
dependencies {
735-
api project(':spring-integration-core')
736719
api 'org.springframework:spring-jdbc'
737720
optionalApi "org.postgresql:postgresql:$postgresVersion"
738721

@@ -758,7 +741,6 @@ project('spring-integration-jdbc') {
758741
project('spring-integration-jms') {
759742
description = 'Spring Integration JMS Support'
760743
dependencies {
761-
api project(':spring-integration-core')
762744
api 'org.springframework:spring-jms'
763745
providedImplementation "jakarta.jms:jakarta.jms-api:$jmsApiVersion"
764746

@@ -775,22 +757,17 @@ project('spring-integration-jms') {
775757
project('spring-integration-jmx') {
776758
description = 'Spring Integration JMX Support'
777759
dependencies {
778-
api project(':spring-integration-core')
779-
780760
testImplementation "org.aspectj:aspectjweaver:$aspectjVersion"
781761
}
782762
}
783763

784764
project('spring-integration-jpa') {
785765
description = 'Spring Integration JPA Support'
786766
dependencies {
787-
api project(':spring-integration-core')
788767
api 'org.springframework:spring-orm'
789768
optionalApi "jakarta.persistence:jakarta.persistence-api:$jpaApiVersion"
790769

791-
testImplementation('org.springframework.data:spring-data-jpa') {
792-
exclude group: 'org.springframework'
793-
}
770+
testImplementation 'org.springframework.data:spring-data-jpa'
794771
testImplementation "com.h2database:h2:$h2Version"
795772
testImplementation "org.hibernate.orm:hibernate-core:$hibernateVersion"
796773
}
@@ -799,10 +776,7 @@ project('spring-integration-jpa') {
799776
project('spring-integration-kafka') {
800777
description = 'Spring Integration for Apache Kafka'
801778
dependencies {
802-
api project(':spring-integration-core')
803-
api('org.springframework.kafka:spring-kafka') {
804-
exclude group: 'org.springframework'
805-
}
779+
api 'org.springframework.kafka:spring-kafka'
806780

807781
testImplementation 'org.springframework.kafka:spring-kafka-test'
808782
testImplementation 'com.fasterxml.jackson.core:jackson-databind'
@@ -812,7 +786,6 @@ project('spring-integration-kafka') {
812786
project('spring-integration-mail') {
813787
description = 'Spring Integration Mail Support'
814788
dependencies {
815-
api project(':spring-integration-core')
816789
api 'org.springframework:spring-context-support'
817790

818791
providedImplementation "org.eclipse.angus:jakarta.mail:$mailVersion"
@@ -826,10 +799,8 @@ project('spring-integration-mail') {
826799
project('spring-integration-mongodb') {
827800
description = 'Spring Integration MongoDB Support'
828801
dependencies {
829-
api project(':spring-integration-core')
830-
api('org.springframework.data:spring-data-mongodb') {
831-
exclude group: 'org.springframework'
832-
}
802+
api 'org.springframework.data:spring-data-mongodb'
803+
833804
optionalApi "org.mongodb:mongodb-driver-sync:$mongoDriverVersion"
834805
optionalApi "org.mongodb:mongodb-driver-reactivestreams:$mongoDriverVersion"
835806

@@ -840,10 +811,7 @@ project('spring-integration-mongodb') {
840811
project('spring-integration-r2dbc') {
841812
description = 'Spring Integration R2DBC Support'
842813
dependencies {
843-
api project(':spring-integration-core')
844-
api('org.springframework.data:spring-data-r2dbc') {
845-
exclude group: 'org.springframework'
846-
}
814+
api 'org.springframework.data:spring-data-r2dbc'
847815
api 'org.springframework:spring-r2dbc'
848816

849817
testImplementation "io.r2dbc:r2dbc-h2:$r2dbch2Version"
@@ -853,8 +821,8 @@ project('spring-integration-r2dbc') {
853821
project('spring-integration-mqtt') {
854822
description = 'Spring Integration MQTT Support'
855823
dependencies {
856-
api project(':spring-integration-core')
857824
api "org.eclipse.paho:org.eclipse.paho.client.mqttv3:$pahoMqttClientVersion"
825+
858826
optionalApi "org.eclipse.paho:org.eclipse.paho.mqttv5.client:$pahoMqttClientVersion"
859827

860828
testImplementation project(':spring-integration-jmx')
@@ -865,11 +833,7 @@ project('spring-integration-mqtt') {
865833
project('spring-integration-redis') {
866834
description = 'Spring Integration Redis Support'
867835
dependencies {
868-
api project(':spring-integration-core')
869-
api('org.springframework.data:spring-data-redis') {
870-
exclude group: 'org.springframework'
871-
}
872-
836+
api 'org.springframework.data:spring-data-redis'
873837
testImplementation "io.lettuce:lettuce-core:$lettuceVersion"
874838
testImplementation 'com.fasterxml.jackson.core:jackson-databind'
875839
}
@@ -882,15 +846,13 @@ project('spring-integration-redis') {
882846
project('spring-integration-rsocket') {
883847
description = 'Spring Integration RSocket Support'
884848
dependencies {
885-
api project(':spring-integration-core')
886849
api "io.rsocket:rsocket-transport-netty:$rsocketVersion"
887850
}
888851
}
889852

890853
project('spring-integration-scripting') {
891854
description = 'Spring Integration Scripting Support'
892855
dependencies {
893-
api project(':spring-integration-core')
894856
optionalApi 'org.jetbrains.kotlin:kotlin-scripting-jsr223'
895857
providedImplementation "org.graalvm.sdk:graal-sdk:$graalvmVersion"
896858
providedImplementation "org.graalvm.js:js:$graalvmVersion"
@@ -911,10 +873,7 @@ project('spring-integration-scripting') {
911873
project('spring-integration-security') {
912874
description = 'Spring Integration Security Support'
913875
dependencies {
914-
api project(':spring-integration-core')
915876
api 'org.springframework.security:spring-security-messaging'
916-
917-
testImplementation 'org.springframework.security:spring-security-config'
918877
}
919878
}
920879

@@ -947,7 +906,6 @@ project('spring-integration-smb') {
947906
project('spring-integration-stomp') {
948907
description = 'Spring Integration STOMP Support'
949908
dependencies {
950-
api project(':spring-integration-core')
951909
optionalApi 'org.springframework:spring-websocket'
952910

953911
testImplementation project(':spring-integration-websocket')
@@ -973,9 +931,6 @@ project('spring-integration-stomp') {
973931

974932
project('spring-integration-stream') {
975933
description = 'Spring Integration Stream Support'
976-
dependencies {
977-
api project(':spring-integration-core')
978-
}
979934

980935
tasks.withType(JavaForkOptions) {
981936
jvmArgs '--add-opens', 'java.base/java.io=ALL-UNNAMED'
@@ -992,7 +947,6 @@ project('spring-integration-syslog') {
992947
project('spring-integration-test') {
993948
description = 'Spring Integration Testing Framework'
994949
dependencies {
995-
api project(':spring-integration-core')
996950
api project(':spring-integration-test-support')
997951
}
998952
}
@@ -1026,7 +980,6 @@ project('spring-integration-webflux') {
1026980
project('spring-integration-websocket') {
1027981
description = 'Spring Integration WebSockets Support'
1028982
dependencies {
1029-
api project(':spring-integration-core')
1030983
api 'org.springframework:spring-websocket'
1031984
optionalApi 'org.springframework:spring-webmvc'
1032985
providedImplementation "jakarta.servlet:jakarta.servlet-api:$servletApiVersion"
@@ -1047,7 +1000,6 @@ project('spring-integration-websocket') {
10471000
project('spring-integration-ws') {
10481001
description = 'Spring Integration Web Services Support'
10491002
dependencies {
1050-
api project(':spring-integration-core')
10511003
api 'org.springframework:spring-oxm'
10521004
api 'org.springframework:spring-webmvc'
10531005
api('org.springframework.ws:spring-ws-core') {
@@ -1072,7 +1024,6 @@ project('spring-integration-ws') {
10721024
project('spring-integration-xml') {
10731025
description = 'Spring Integration XML Support'
10741026
dependencies {
1075-
api project(':spring-integration-core')
10761027
api 'org.springframework:spring-oxm'
10771028
api('org.springframework.ws:spring-xml') {
10781029
exclude group: 'org.springframework'
@@ -1093,7 +1044,6 @@ project('spring-integration-xml') {
10931044
project('spring-integration-xmpp') {
10941045
description = 'Spring Integration XMPP Support'
10951046
dependencies {
1096-
api project(':spring-integration-core')
10971047
api "org.igniterealtime.smack:smack-tcp:$smackVersion"
10981048
api "org.igniterealtime.smack:smack-java8:$smackVersion"
10991049
api "org.igniterealtime.smack:smack-extensions:$smackVersion"
@@ -1106,7 +1056,6 @@ project('spring-integration-xmpp') {
11061056
project('spring-integration-zeromq') {
11071057
description = 'Spring Integration ZeroMQ Support'
11081058
dependencies {
1109-
api project(':spring-integration-core')
11101059
api "org.zeromq:jeromq:$jeroMqVersion"
11111060

11121061
optionalApi 'com.fasterxml.jackson.core:jackson-databind'
@@ -1125,7 +1074,6 @@ project('spring-integration-zip') {
11251074
project('spring-integration-zookeeper') {
11261075
description = 'Spring Integration Zookeeper Support'
11271076
dependencies {
1128-
api project(':spring-integration-core')
11291077
api "org.apache.curator:curator-recipes:$curatorVersion"
11301078

11311079
testImplementation "org.apache.curator:curator-test:$curatorVersion"

0 commit comments

Comments
 (0)