You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by ie...@apache.org on 2020/07/03 09:03:36 UTC

[james-project] 33/34: JAMES-3273 #comment Using the gradle application plugin for guice apps

This is an automated email from the ASF dual-hosted git repository.

ieugen pushed a commit to branch JAMES-3260-gradle-poc
in repository https://gitbox.apache.org/repos/asf/james-project.git

commit 6b28942546a12c5527e118aa89aab7966553b812
Author: Eugen Stan <ie...@apache.org>
AuthorDate: Fri Jul 3 01:05:46 2020 +0300

    JAMES-3273 #comment Using the gradle application plugin for guice apps
    
    * We now build binary distributions for (most) guice apps
---
 .../cassandra-rabbitmq-object-storage/build.gradle |  5 ++
 mpt/impl/smtp/cassandra/build.gradle               |  1 +
 server/container/cli-integration/build.gradle      |  1 +
 .../container/guice/cassandra-guice/build.gradle   | 92 +++++++++++-----------
 .../guice/cassandra-ldap-guice/build.gradle        | 19 +++--
 .../guice/cassandra-rabbitmq-guice/build.gradle    | 27 +++++--
 .../cassandra-rabbitmq-ldap-guice/build.gradle     | 16 +++-
 server/container/guice/jpa-guice/build.gradle      | 56 +++++++------
 server/container/guice/jpa-smtp/build.gradle       |  6 +-
 server/container/guice/memory-guice/build.gradle   | 72 +++++++++--------
 server/mailet/integration-testing/build.gradle     | 50 +++++++-----
 .../build.gradle                                   | 11 ++-
 .../build.gradle                                   | 10 ++-
 .../build.gradle                                   |  5 ++
 .../build.gradle                                   |  2 +
 .../build.gradle                                   |  1 +
 .../build.gradle                                   | 15 +++-
 17 files changed, 237 insertions(+), 152 deletions(-)

diff --git a/mpt/impl/smtp/cassandra-rabbitmq-object-storage/build.gradle b/mpt/impl/smtp/cassandra-rabbitmq-object-storage/build.gradle
index 9974254..8c17fae 100644
--- a/mpt/impl/smtp/cassandra-rabbitmq-object-storage/build.gradle
+++ b/mpt/impl/smtp/cassandra-rabbitmq-object-storage/build.gradle
@@ -16,14 +16,19 @@ dependencies {
     implementation 'com.google.guava:guava:25.1-jre'
     implementation 'com.google.inject:guice:4.2.2'
 
+    testImplementation project(':james-backends-common:apache-james-backends-cassandra')
     testImplementation project(path: ':james-backends-common:apache-james-backends-cassandra', configuration: 'tests')
     testImplementation project(path: ':james-backends-common:apache-james-backends-rabbitmq', configuration: 'tests')
+    testImplementation project(':james-server:james-server-blob:blob-objectstorage')
     testImplementation project(path: ':james-server:james-server-blob:blob-objectstorage', configuration: 'tests')
     testImplementation project(path: ':james-server:james-server-guice:blob-objectstorage-guice', configuration: 'tests')
     testImplementation project(':apache-james-mpt:apache-james-mpt-smtp:apache-james-mpt-smtp-core')
+    testImplementation project(':james-server:james-server-guice:james-server-cassandra-guice')
     testImplementation project(path: ':james-server:james-server-guice:james-server-cassandra-rabbitmq-guice', configuration: 'tests')
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-common', configuration: 'tests')
+    testImplementation project(':james-server:james-server-guice:blob-objectstorage-guice')
     testImplementation project(':james-server:james-server-guice:james-server-guice-jmap')
+    testImplementation project(':james-server:james-server-guice:james-server-guice-rabbitmq')
     testImplementation project(':james-server:james-server-util')
 
     testImplementation 'org.apache.commons:commons-configuration2:2.7'
diff --git a/mpt/impl/smtp/cassandra/build.gradle b/mpt/impl/smtp/cassandra/build.gradle
index 861b3df..cf31050 100644
--- a/mpt/impl/smtp/cassandra/build.gradle
+++ b/mpt/impl/smtp/cassandra/build.gradle
@@ -13,6 +13,7 @@ dependencies {
     implementation project(':james-server:james-server-guice:james-server-cassandra-guice')
     implementation 'com.google.guava:guava:25.1-jre'
 
+    testImplementation project(':james-backends-common:apache-james-backends-cassandra')
     testImplementation project(path: ':james-backends-common:apache-james-backends-cassandra', configuration: 'tests')
     testImplementation project(':apache-james-mpt:apache-james-mpt-smtp:apache-james-mpt-smtp-core')
     testImplementation project(':james-server:james-server-guice:james-server-cassandra-guice')
diff --git a/server/container/cli-integration/build.gradle b/server/container/cli-integration/build.gradle
index 0f63c61..3035577 100644
--- a/server/container/cli-integration/build.gradle
+++ b/server/container/cli-integration/build.gradle
@@ -14,6 +14,7 @@ dependencies {
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-common', configuration: 'tests')
     testImplementation project(':james-server:james-server-guice:james-server-guice-configuration')
     testImplementation project(':james-server:james-server-guice:james-server-guice-jmx')
+    testImplementation project(':james-server:james-server-guice:james-server-guice-mailbox')
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-jmap', configuration: 'tests')
     testImplementation project(':james-server:james-server-guice:james-server-guice-managedsieve')
     testImplementation project(':james-server:james-server-guice:james-server-memory-guice')
diff --git a/server/container/guice/cassandra-guice/build.gradle b/server/container/guice/cassandra-guice/build.gradle
index 9632b94..89118aa 100644
--- a/server/container/guice/cassandra-guice/build.gradle
+++ b/server/container/guice/cassandra-guice/build.gradle
@@ -2,7 +2,7 @@
  * This file was generated by the Gradle 'init' task.
  */
 plugins {
-    id 'java-library'
+    id 'application'
 }
 
 configurations {
@@ -10,49 +10,49 @@ configurations {
 }
 
 dependencies {
-    api project(':apache-james-mailbox:apache-james-mailbox-cassandra')
-    api project(':apache-james-mailbox:apache-james-mailbox-deleted-messages-vault-cassandra')
-    api project(':apache-james-mailbox:apache-james-mailbox-elasticsearch')
-    api project(':apache-james-mailbox:apache-james-mailbox-event-cassandra')
-    api project(':apache-james-mailbox:apache-james-mailbox-tika')
-    api project(':apache-james-mailbox:apache-james-mailbox-quota-search-elasticsearch')
-    api project(':apache-james-mailbox:quota-mailing-cassandra')
-    api project(':apache-mailet:apache-mailet-icalendar')
-    api project(':event-sourcing:event-sourcing-event-store-cassandra')
-    api project(':james-server:james-server-guice:james-server-mailbox-plugin-deleted-messages-vault-guice')
-    api project(':james-server:james-server-guice:blob-api-guice')
-    api project(':james-server:james-server-blob:blob-cassandra')
-    api project(':james-server:james-server-guice:blob-export-guice')
-    api project(':james-server:james-server-data-cassandra')
-    api project(':james-server:james-server-data-jmap-cassandra')
-    api project(':james-server:james-server-guice:james-server-guice-activemq')
-    api project(':james-server:james-server-guice:james-server-guice-common')
-    api project(':james-server:james-server-guice:james-server-guice-mailet')
-    api project(':james-server:james-server-guice:james-server-guice-es-resporter')
-    api project(':james-server:james-server-guice:james-server-guice-imap')
-    api project(':james-server:james-server-guice:james-server-guice-jmap')
-    api project(':james-server:james-server-guice:james-server-guice-jmx')
-    api project(':james-server:james-server-guice:james-server-guice-lmtp')
-    api project(':james-server:james-server-guice:james-server-guice-mailbox')
-    api project(':james-server:james-server-guice:james-server-guice-mailbox-plugin-spamassassin')
-    api project(':james-server:james-server-guice:james-server-guice-managedsieve')
-    api project(':james-server:james-server-guice:james-server-guice-pop')
-    api project(':james-server:james-server-guice:james-server-guice-rabbitmq')
-    api project(':james-server:james-server-guice:james-server-guice-smtp')
-    api project(':james-server:james-server-guice:james-server-guice-webadmin')
-    api project(':james-server:james-server-guice:james-server-guice-webadmin-data')
-    api project(':james-server:james-server-webadmin-cassandra')
-    api project(':james-server:james-server-webadmin-cassandra-data')
-    api project(':james-server:james-server-guice:james-server-guice-webadmin-jmap')
-    api project(':james-server:james-server-guice:james-server-guice-webadmin-mailbox')
-    api project(':james-server:james-server-guice:james-server-guice-webadmin-mailqueue')
-    api project(':james-server:james-server-guice:james-server-guice-webadmin-mailrepository')
-    api project(':james-server:james-server-guice:james-server-guice-webadmin-swagger')
-    api project(':james-server:james-server-mailbox-adapter')
-    api project(':james-server:james-server-mailets')
-    api project(':james-server:james-server-mailrepository-cassandra')
-    api project(':james-server:james-server-util')
-    api project(':james-server:metrics-es-reporter')
+    implementation project(':apache-james-mailbox:apache-james-mailbox-cassandra')
+    implementation project(':apache-james-mailbox:apache-james-mailbox-deleted-messages-vault-cassandra')
+    implementation project(':apache-james-mailbox:apache-james-mailbox-elasticsearch')
+    implementation project(':apache-james-mailbox:apache-james-mailbox-event-cassandra')
+    implementation project(':apache-james-mailbox:apache-james-mailbox-tika')
+    implementation project(':apache-james-mailbox:apache-james-mailbox-quota-search-elasticsearch')
+    implementation project(':apache-james-mailbox:quota-mailing-cassandra')
+    implementation project(':apache-mailet:apache-mailet-icalendar')
+    implementation project(':event-sourcing:event-sourcing-event-store-cassandra')
+    implementation project(':james-server:james-server-guice:james-server-mailbox-plugin-deleted-messages-vault-guice')
+    implementation project(':james-server:james-server-guice:blob-api-guice')
+    implementation project(':james-server:james-server-blob:blob-cassandra')
+    implementation project(':james-server:james-server-guice:blob-export-guice')
+    implementation project(':james-server:james-server-data-cassandra')
+    implementation project(':james-server:james-server-data-jmap-cassandra')
+    implementation project(':james-server:james-server-guice:james-server-guice-activemq')
+    implementation project(':james-server:james-server-guice:james-server-guice-common')
+    implementation project(':james-server:james-server-guice:james-server-guice-mailet')
+    implementation project(':james-server:james-server-guice:james-server-guice-es-resporter')
+    implementation project(':james-server:james-server-guice:james-server-guice-imap')
+    implementation project(':james-server:james-server-guice:james-server-guice-jmap')
+    implementation project(':james-server:james-server-guice:james-server-guice-jmx')
+    implementation project(':james-server:james-server-guice:james-server-guice-lmtp')
+    implementation project(':james-server:james-server-guice:james-server-guice-mailbox')
+    implementation project(':james-server:james-server-guice:james-server-guice-mailbox-plugin-spamassassin')
+    implementation project(':james-server:james-server-guice:james-server-guice-managedsieve')
+    implementation project(':james-server:james-server-guice:james-server-guice-pop')
+    implementation project(':james-server:james-server-guice:james-server-guice-rabbitmq')
+    implementation project(':james-server:james-server-guice:james-server-guice-smtp')
+    implementation project(':james-server:james-server-guice:james-server-guice-webadmin')
+    implementation project(':james-server:james-server-guice:james-server-guice-webadmin-data')
+    implementation project(':james-server:james-server-webadmin-cassandra')
+    implementation project(':james-server:james-server-webadmin-cassandra-data')
+    implementation project(':james-server:james-server-guice:james-server-guice-webadmin-jmap')
+    implementation project(':james-server:james-server-guice:james-server-guice-webadmin-mailbox')
+    implementation project(':james-server:james-server-guice:james-server-guice-webadmin-mailqueue')
+    implementation project(':james-server:james-server-guice:james-server-guice-webadmin-mailrepository')
+    implementation project(':james-server:james-server-guice:james-server-guice-webadmin-swagger')
+    implementation project(':james-server:james-server-mailbox-adapter')
+    implementation project(':james-server:james-server-mailets')
+    implementation project(':james-server:james-server-mailrepository-cassandra')
+    implementation project(':james-server:james-server-util')
+    implementation project(':james-server:metrics-es-reporter')
 
     implementation 'ch.qos.logback:logback-classic:1.2.3'
     implementation 'com.linagora:logback-elasticsearch-appender:1.8.0'
@@ -104,4 +104,8 @@ artifacts {
     tests testsJar
 }
 
+application {
+    mainClass = 'org.apache.james.CassandraJamesServerMain'
+}
+
 publishing.publications.maven.artifact(testsJar)
diff --git a/server/container/guice/cassandra-ldap-guice/build.gradle b/server/container/guice/cassandra-ldap-guice/build.gradle
index cd4ea74..a24015d 100644
--- a/server/container/guice/cassandra-ldap-guice/build.gradle
+++ b/server/container/guice/cassandra-ldap-guice/build.gradle
@@ -2,7 +2,7 @@
  * This file was generated by the Gradle 'init' task.
  */
 plugins {
-    id 'java-library'
+    id 'application'
 }
 
 configurations {
@@ -10,13 +10,15 @@ configurations {
 }
 
 dependencies {
-    api project(':apache-james-mailbox:apache-james-mailbox-cassandra')
-    api project(':james-server:james-server-guice:james-server-cassandra-guice')
-    api project(':james-server:james-server-data-ldap')
-    api project(':james-server:james-server-guice:james-server-guice-common')
+    implementation project(':apache-james-mailbox:apache-james-mailbox-cassandra')
+    implementation project(':james-server:james-server-data-ldap')
+    implementation project(':james-server:james-server-guice:james-server-cassandra-guice')
+    implementation project(':james-server:james-server-guice:james-server-guice-common')
+    implementation project(':james-server:james-server-guice:james-server-guice-jmx')
 
     implementation 'com.google.inject:guice:4.2.2'
     implementation 'org.apache.commons:commons-configuration2:2.7'
+    implementation 'org.slf4j:slf4j-api:1.7.27'
 
     testImplementation project(path: ':james-backends-common:apache-james-backends-cassandra', configuration: 'tests')
     testImplementation project(path: ':james-backends-common:apache-james-backends-es', configuration: 'tests')
@@ -24,9 +26,12 @@ dependencies {
     testImplementation project(path: ':james-server:james-server-data-ldap', configuration: 'tests')
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-common', configuration: 'tests')
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-jmap', configuration: 'tests')
+    testImplementation project(path: ':james-server:james-server-guice:james-server-guice-imap')
+    testImplementation project(path: ':james-server:james-server-guice:james-server-guice-smtp')
     testImplementation project(':james-server:james-server-testing')
     testImplementation project(':james-server:james-server-util')
 
+    testImplementation 'commons-net:commons-net:3.6'
     testImplementation 'io.rest-assured:rest-assured:4.0.0'
     testImplementation 'org.awaitility:awaitility:3.1.6'
     testImplementation 'org.testcontainers:testcontainers:1.12.0'
@@ -53,4 +58,8 @@ artifacts {
     tests testsJar
 }
 
+application {
+    mainClass = 'org.apache.james.CassandraLdapJamesServerMain'
+}
+
 publishing.publications.maven.artifact(testsJar)
diff --git a/server/container/guice/cassandra-rabbitmq-guice/build.gradle b/server/container/guice/cassandra-rabbitmq-guice/build.gradle
index 9ea6a3f..4c9c404 100644
--- a/server/container/guice/cassandra-rabbitmq-guice/build.gradle
+++ b/server/container/guice/cassandra-rabbitmq-guice/build.gradle
@@ -2,7 +2,7 @@
  * This file was generated by the Gradle 'init' task.
  */
 plugins {
-    id 'java-library'
+    id 'application'
 }
 
 configurations {
@@ -10,14 +10,20 @@ configurations {
 }
 
 dependencies {
-    api project(':apache-james-mailbox:apache-james-mailbox-event-rabbitmq')
-    api project(':apache-james-mailbox:apache-james-mailbox-tools-quota-recompute')
-    api(project(':james-server:james-server-guice:blob-objectstorage-guice')) {
+    implementation project(':apache-james-mailbox:apache-james-mailbox-event-rabbitmq')
+    implementation project(':apache-james-mailbox:apache-james-mailbox-tools-quota-recompute')
+    implementation (project(':james-server:james-server-guice:blob-objectstorage-guice')) {
         exclude group: 'com.google.inject.extensions', module: 'guice-multibindings'
     }
-    api project(':james-server:james-server-blob:blob-union')
-    api project(':james-server:james-server-guice:james-server-cassandra-guice')
-    api project(':james-server:james-server-task-distributed')
+
+    implementation project(':james-server:james-server-blob:blob-union')
+    implementation project(':james-server:james-server-blob:blob-cassandra')
+    implementation project(':james-server:james-server-guice:james-server-cassandra-guice')
+    implementation project(':james-server:james-server-guice:james-server-guice-common')
+    implementation project(':james-server:james-server-guice:james-server-guice-jmx')
+    implementation project(':james-server:james-server-guice:james-server-guice-mailbox')
+    implementation project(':james-server:james-server-guice:james-server-guice-rabbitmq')
+    implementation project(':james-server:james-server-task-distributed')
 
     implementation 'com.github.fge:throwing-lambdas:0.5.0'
     implementation 'com.google.inject:guice:4.2.2'
@@ -39,9 +45,12 @@ dependencies {
     testImplementation project(path: ':james-server:james-server-guice:james-server-cassandra-guice', configuration: 'tests')
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-common', configuration: 'tests')
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-jmap', configuration: 'tests')
+    testImplementation project(':james-server:james-server-guice:james-server-guice-smtp')
+    testImplementation project(':james-server:james-server-guice:james-server-guice-webadmin')
     testImplementation project(':james-server:jmap-draft-integration-testing:james-server-jmap-draft-integration-testing')
     testImplementation project(':james-server:james-server-testing')
     testImplementation project(':james-server:james-server-util')
+    testImplementation project(':james-server:james-server-webadmin-core')
     testImplementation project(path: ':james-server:james-server-webadmin-core', configuration: 'tests')
 
     testImplementation 'com.google.inject:guice:4.2.2'
@@ -76,4 +85,8 @@ artifacts {
     tests testsJar
 }
 
+application {
+    mainClass = 'org.apache.james.CassandraRabbitMQJamesServerMain'
+}
+
 publishing.publications.maven.artifact(testsJar)
diff --git a/server/container/guice/cassandra-rabbitmq-ldap-guice/build.gradle b/server/container/guice/cassandra-rabbitmq-ldap-guice/build.gradle
index 79fee79..ad8aa82 100644
--- a/server/container/guice/cassandra-rabbitmq-ldap-guice/build.gradle
+++ b/server/container/guice/cassandra-rabbitmq-ldap-guice/build.gradle
@@ -2,7 +2,7 @@
  * This file was generated by the Gradle 'init' task.
  */
 plugins {
-    id 'java-library'
+    id 'application'
 }
 
 configurations {
@@ -10,9 +10,11 @@ configurations {
 }
 
 dependencies {
-    api project(':james-server:james-server-guice:james-server-cassandra-ldap-guice')
-    api project(':james-server:james-server-guice:james-server-cassandra-rabbitmq-guice')
-    api project(':james-server:james-server-guice:james-server-guice-rabbitmq')
+    implementation project(':james-server:james-server-guice:james-server-cassandra-ldap-guice')
+    implementation project(':james-server:james-server-guice:james-server-cassandra-rabbitmq-guice')
+    implementation project(':james-server:james-server-guice:james-server-guice-common')
+    implementation project(':james-server:james-server-guice:james-server-guice-jmx')
+    implementation project(':james-server:james-server-guice:james-server-guice-rabbitmq')
 
     implementation 'com.google.inject:guice:4.2.2'
 
@@ -31,8 +33,10 @@ dependencies {
     testImplementation project(path: ':james-server:james-server-data-ldap', configuration: 'tests')
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-common', configuration: 'tests')
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-jmap', configuration: 'tests')
+    testImplementation project(path: ':james-server:james-server-guice:james-server-guice-imap')
     testImplementation project(':james-server:james-server-testing')
 
+    testImplementation 'commons-net:commons-net:3.6'
     testImplementation 'org.assertj:assertj-core:3.12.2'
 
     testImplementation 'org.junit.jupiter:junit-jupiter-api:5.5.1'
@@ -52,4 +56,8 @@ tasks.register('testsJar', Jar) {
     from(sourceSets.test.output)
 }
 
+application {
+    mainClass = 'org.apache.james.CassandraRabbitMQLdapJamesServerMain'
+}
+
 publishing.publications.maven.artifact(testsJar)
diff --git a/server/container/guice/jpa-guice/build.gradle b/server/container/guice/jpa-guice/build.gradle
index a008407..a47871e 100644
--- a/server/container/guice/jpa-guice/build.gradle
+++ b/server/container/guice/jpa-guice/build.gradle
@@ -2,7 +2,7 @@
  * This file was generated by the Gradle 'init' task.
  */
 plugins {
-    id 'java-library'
+    id 'application'
 }
 
 configurations {
@@ -10,31 +10,31 @@ configurations {
 }
 
 dependencies {
-    api project(':apache-james-mailbox:apache-james-mailbox-jpa')
-    api project(':apache-james-mailbox:apache-james-mailbox-quota-search-scanning')
-    api project(':apache-james-mailbox:apache-james-mailbox-lucene')
-    api project(':james-server:james-server-data-jpa')
-    api project(':james-server:james-server-guice:james-server-guice-activemq')
-    api project(':james-server:james-server-guice:james-server-guice-common')
-    api project(':james-server:james-server-guice:james-server-guice-mailbox')
-    api project(':james-server:james-server-guice:james-server-guice-es-resporter')
-    api project(':james-server:james-server-guice:james-server-guice-imap')
-    api project(':james-server:james-server-guice:james-server-guice-jmx')
-    api project(':james-server:james-server-guice:james-server-guice-lmtp')
-    api project(':james-server:james-server-guice:james-server-guice-mailbox-plugin-spamassassin')
-    api project(':james-server:james-server-guice:james-server-guice-managedsieve')
-    api project(':james-server:james-server-guice:james-server-guice-pop')
-    api project(':james-server:james-server-guice:james-server-guice-smtp')
-    api project(':james-server:james-server-guice:james-server-guice-sieve-jpa')
-    api project(':james-server:james-server-guice:james-server-guice-webadmin')
-    api project(':james-server:james-server-guice:james-server-guice-webadmin-data')
-    api project(':james-server:james-server-guice:james-server-guice-webadmin-mailbox')
-    api project(':james-server:james-server-guice:james-server-guice-webadmin-mailqueue')
-    api project(':james-server:james-server-guice:james-server-guice-webadmin-mailrepository')
-    api project(':james-server:james-server-guice:james-server-guice-webadmin-swagger')
-    api project(':james-server:james-server-guice:james-server-jpa-common-guice')
-    api project(':james-server:james-server-mailbox-adapter')
-    api project(':james-server:james-server-mailets')
+    implementation project(':apache-james-mailbox:apache-james-mailbox-jpa')
+    implementation project(':apache-james-mailbox:apache-james-mailbox-quota-search-scanning')
+    implementation project(':apache-james-mailbox:apache-james-mailbox-lucene')
+    implementation project(':james-server:james-server-data-jpa')
+    implementation project(':james-server:james-server-guice:james-server-guice-activemq')
+    implementation project(':james-server:james-server-guice:james-server-guice-common')
+    implementation project(':james-server:james-server-guice:james-server-guice-mailbox')
+    implementation project(':james-server:james-server-guice:james-server-guice-es-resporter')
+    implementation project(':james-server:james-server-guice:james-server-guice-imap')
+    implementation project(':james-server:james-server-guice:james-server-guice-jmx')
+    implementation project(':james-server:james-server-guice:james-server-guice-lmtp')
+    implementation project(':james-server:james-server-guice:james-server-guice-mailbox-plugin-spamassassin')
+    implementation project(':james-server:james-server-guice:james-server-guice-managedsieve')
+    implementation project(':james-server:james-server-guice:james-server-guice-pop')
+    implementation project(':james-server:james-server-guice:james-server-guice-smtp')
+    implementation project(':james-server:james-server-guice:james-server-guice-sieve-jpa')
+    implementation project(':james-server:james-server-guice:james-server-guice-webadmin')
+    implementation project(':james-server:james-server-guice:james-server-guice-webadmin-data')
+    implementation project(':james-server:james-server-guice:james-server-guice-webadmin-mailbox')
+    implementation project(':james-server:james-server-guice:james-server-guice-webadmin-mailqueue')
+    implementation project(':james-server:james-server-guice:james-server-guice-webadmin-mailrepository')
+    implementation project(':james-server:james-server-guice:james-server-guice-webadmin-swagger')
+    implementation project(':james-server:james-server-guice:james-server-jpa-common-guice')
+    implementation project(':james-server:james-server-mailbox-adapter')
+    implementation project(':james-server:james-server-mailets')
 
     implementation 'ch.qos.logback:logback-classic:1.2.3'
     implementation 'com.linagora:logback-elasticsearch-appender:1.8.0'
@@ -72,4 +72,8 @@ tasks.register('testsJar', Jar) {
     from(sourceSets.test.output)
 }
 
+application {
+    mainClass = 'org.apache.james.JPAJamesServerMain'
+}
+
 publishing.publications.maven.artifact(testsJar)
diff --git a/server/container/guice/jpa-smtp/build.gradle b/server/container/guice/jpa-smtp/build.gradle
index a3d3e63..4277c02 100644
--- a/server/container/guice/jpa-smtp/build.gradle
+++ b/server/container/guice/jpa-smtp/build.gradle
@@ -2,7 +2,7 @@
  * This file was generated by the Gradle 'init' task.
  */
 plugins {
-    id 'java-library'
+    id 'application'
 }
 
 configurations {
@@ -48,4 +48,8 @@ tasks.register('testsJar', Jar) {
     from(sourceSets.test.output)
 }
 
+application {
+    mainClass = 'org.apache.james.JPAJamesServerMain'
+}
+
 publishing.publications.maven.artifact(testsJar)
diff --git a/server/container/guice/memory-guice/build.gradle b/server/container/guice/memory-guice/build.gradle
index 899a90c..9ecb34d 100644
--- a/server/container/guice/memory-guice/build.gradle
+++ b/server/container/guice/memory-guice/build.gradle
@@ -2,7 +2,7 @@
  * This file was generated by the Gradle 'init' task.
  */
 plugins {
-    id 'java-library'
+    id 'application'
 }
 
 configurations {
@@ -10,39 +10,39 @@ configurations {
 }
 
 dependencies {
-    api  project(':apache-james-mailbox:apache-james-mailbox-memory')
-    api  project(':apache-james-mailbox:apache-james-mailbox-quota-mailing')
-    api  project(':apache-james-mailbox:apache-james-mailbox-quota-search')
-    api  project(':apache-james-mailbox:apache-james-mailbox-quota-search-scanning')
-    api  project(':apache-mailet:apache-mailet-icalendar')
-    api  project(':event-sourcing:event-sourcing-event-store-memory')
-    api  project(':james-server:james-server-data-memory')
-    api  project(':james-server:james-server-guice:blob-export-guice')
-    api  project(':james-server:james-server-guice:blob-memory-guice')
-    api  project(':james-server:james-server-guice:james-server-guice-common')
-    api  project(':james-server:james-server-guice:james-server-guice-imap')
-    api  project(':james-server:james-server-guice:james-server-guice-jmap')
-    api  project(':james-server:james-server-guice:james-server-guice-jmx')
-    api  project(':james-server:james-server-guice:james-server-guice-lmtp')
-    api  project(':james-server:james-server-guice:james-server-guice-mailbox-plugin-spamassassin')
-    api  project(':james-server:james-server-guice:james-server-guice-managedsieve')
-    api  project(':james-server:james-server-guice:james-server-guice-pop')
-    api  project(':james-server:james-server-guice:james-server-guice-sieve-file')
-    api  project(':james-server:james-server-guice:james-server-guice-smtp')
-    api  project(':james-server:james-server-guice:james-server-guice-webadmin')
-    api  project(':james-server:james-server-guice:james-server-guice-webadmin-data')
-    api  project(':james-server:james-server-guice:james-server-guice-webadmin-jmap')
-    api  project(':james-server:james-server-guice:james-server-guice-webadmin-mailbox')
-    api  project(':james-server:james-server-guice:james-server-guice-webadmin-mailqueue')
-    api  project(':james-server:james-server-guice:james-server-guice-webadmin-mailrepository')
-    api  project(':james-server:james-server-guice:james-server-guice-webadmin-swagger')
-    api  project(':james-server:james-server-guice:james-server-guice-mailbox')
-    api  project(':james-server:james-server-guice:james-server-guice-mailet')
-    api  project(':james-server:james-server-guice:james-server-mailbox-plugin-deleted-messages-vault-guice')
-    api  project(':james-server:james-server-mailbox-adapter')
-    api  project(':james-server:james-server-mailets')
-    api  project(':james-server:james-server-mailrepository-memory')
-    api  project(':james-server:james-server-queue-memory')
+    implementation  project(':apache-james-mailbox:apache-james-mailbox-memory')
+    implementation  project(':apache-james-mailbox:apache-james-mailbox-quota-mailing')
+    implementation  project(':apache-james-mailbox:apache-james-mailbox-quota-search')
+    implementation  project(':apache-james-mailbox:apache-james-mailbox-quota-search-scanning')
+    implementation  project(':apache-mailet:apache-mailet-icalendar')
+    implementation  project(':event-sourcing:event-sourcing-event-store-memory')
+    implementation  project(':james-server:james-server-data-memory')
+    implementation  project(':james-server:james-server-guice:blob-export-guice')
+    implementation  project(':james-server:james-server-guice:blob-memory-guice')
+    implementation  project(':james-server:james-server-guice:james-server-guice-common')
+    implementation  project(':james-server:james-server-guice:james-server-guice-imap')
+    implementation  project(':james-server:james-server-guice:james-server-guice-jmap')
+    implementation  project(':james-server:james-server-guice:james-server-guice-jmx')
+    implementation  project(':james-server:james-server-guice:james-server-guice-lmtp')
+    implementation  project(':james-server:james-server-guice:james-server-guice-mailbox-plugin-spamassassin')
+    implementation  project(':james-server:james-server-guice:james-server-guice-managedsieve')
+    implementation  project(':james-server:james-server-guice:james-server-guice-pop')
+    implementation  project(':james-server:james-server-guice:james-server-guice-sieve-file')
+    implementation  project(':james-server:james-server-guice:james-server-guice-smtp')
+    implementation  project(':james-server:james-server-guice:james-server-guice-webadmin')
+    implementation  project(':james-server:james-server-guice:james-server-guice-webadmin-data')
+    implementation  project(':james-server:james-server-guice:james-server-guice-webadmin-jmap')
+    implementation  project(':james-server:james-server-guice:james-server-guice-webadmin-mailbox')
+    implementation  project(':james-server:james-server-guice:james-server-guice-webadmin-mailqueue')
+    implementation  project(':james-server:james-server-guice:james-server-guice-webadmin-mailrepository')
+    implementation  project(':james-server:james-server-guice:james-server-guice-webadmin-swagger')
+    implementation  project(':james-server:james-server-guice:james-server-guice-mailbox')
+    implementation  project(':james-server:james-server-guice:james-server-guice-mailet')
+    implementation  project(':james-server:james-server-guice:james-server-mailbox-plugin-deleted-messages-vault-guice')
+    implementation  project(':james-server:james-server-mailbox-adapter')
+    implementation  project(':james-server:james-server-mailets')
+    implementation  project(':james-server:james-server-mailrepository-memory')
+    implementation  project(':james-server:james-server-queue-memory')
 
     implementation 'ch.qos.logback:logback-classic:1.2.3'
     implementation 'io.projectreactor:reactor-core:3.3.4.RELEASE'
@@ -84,4 +84,8 @@ artifacts {
     tests testsJar
 }
 
+application {
+    mainClass = 'org.apache.james.MemoryJamesServerMain'
+}
+
 publishing.publications.maven.artifact(testsJar)
diff --git a/server/mailet/integration-testing/build.gradle b/server/mailet/integration-testing/build.gradle
index bdcd65f..9adff2f 100644
--- a/server/mailet/integration-testing/build.gradle
+++ b/server/mailet/integration-testing/build.gradle
@@ -10,42 +10,50 @@ configurations {
 }
 
 dependencies {
-    implementation project(':apache-mailet:apache-mailet-crypto')
-    implementation project(':apache-mailet:apache-mailet-icalendar')
-    implementation project(':james-server:james-server-mailets')
-    implementation project(':james-server:james-server-mailet-dkim')
-    implementation project(':james-server:james-server-guice:james-server-memory-guice')
-
-    implementation 'com.github.spullara.mustache.java:compiler:0.9.6'
-    implementation 'com.github.fge:throwing-lambdas:0.5.0'
-    implementation 'com.github.steveash.guavate:guavate:1.0.0'
-    implementation 'com.google.guava:guava:25.1-jre'
-    implementation 'com.sun.mail:javax.mail:1.6.2'
-    implementation 'org.apache.commons:commons-configuration2:2.7'
-    implementation 'org.slf4j:slf4j-api:1.7.27'
-    implementation 'org.testcontainers:testcontainers:1.12.0'
-    implementation 'org.xmlunit:xmlunit-core:2.6.3'
-    implementation 'org.xmlunit:xmlunit-matchers:2.6.3'
-    implementation 'org.awaitility:awaitility:3.1.6'
-
+    testImplementation project(':apache-mailet:apache-mailet-crypto')
+    testImplementation project(':apache-mailet:apache-mailet-icalendar')
     testImplementation project(':apache-mailet:apache-mailet-test')
     testImplementation project(':james-server:james-server-dnsservice-test')
+    testImplementation project(':james-server:james-server-mailets')
+    testImplementation project(':james-server:james-server-mailet-dkim')
+    testImplementation project(':james-server:james-server-jmap-draft')
+    testImplementation project(':james-server:james-server-testing')
+    testImplementation project(':james-server:james-server-webadmin-core')
+    testImplementation project(':james-server:james-server-webadmin-data')
+    testImplementation project(':james-server:james-server-webadmin-mailrepository')
+    testImplementation project(':james-server:mock-smtp-server')
     testImplementation project(':james-server:james-server-guice:james-server-guice-activemq')
     testImplementation project(':james-server:james-server-guice:james-server-guice-common')
+    testImplementation project(':james-server:james-server-guice:james-server-guice-imap')
+    testImplementation project(':james-server:james-server-guice:james-server-guice-smtp')
+    testImplementation project(':james-server:james-server-guice:james-server-guice-mailbox')
+    testImplementation project(':james-server:james-server-guice:james-server-guice-managedsieve')
+    testImplementation project(':james-server:james-server-guice:james-server-guice-webadmin')
+    testImplementation project(':james-server:james-server-guice:james-server-memory-guice')
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-jmap', configuration: 'tests')
-    testImplementation project(':james-server:james-server-testing')
     testImplementation project(path: ':james-server:james-server-webadmin-core', configuration: 'tests')
-    testImplementation project(':james-server:mock-smtp-server')
     testImplementation project(':third-party:apache-james-spamassassin')
 
     testImplementation 'commons-io:commons-io:2.6'
-    testImplementation 'com.google.inject:guice:4.2.2'
     testImplementation 'com.jayway.jsonpath:json-path:2.4.0'
     testImplementation 'com.rabbitmq:amqp-client:5.7.3'
+    testImplementation 'com.github.spullara.mustache.java:compiler:0.9.6'
+    testImplementation 'com.github.fge:throwing-lambdas:0.5.0'
+    testImplementation 'com.github.steveash.guavate:guavate:1.0.0'
+    testImplementation 'com.google.inject:guice:4.2.2'
+    testImplementation 'com.google.guava:guava:25.1-jre'
+    testImplementation 'com.sun.mail:javax.mail:1.6.2'
     testImplementation 'io.rest-assured:rest-assured:4.0.0'
     testImplementation 'net.javacrumbs.json-unit:json-unit-assertj:2.8.0'
+    testImplementation 'org.apache.commons:commons-configuration2:2.7'
+    testImplementation 'org.awaitility:awaitility:3.1.6'
     testImplementation 'org.hamcrest:java-hamcrest:2.0.0.0'
+    testImplementation 'org.slf4j:slf4j-api:1.7.27'
     testImplementation 'org.assertj:assertj-core:3.12.2'
+    testImplementation 'org.testcontainers:testcontainers:1.12.0'
+    testImplementation 'org.xmlunit:xmlunit-core:2.6.3'
+    testImplementation 'org.xmlunit:xmlunit-matchers:2.6.3'
+
 
     testImplementation 'org.junit.jupiter:junit-jupiter-api:5.5.1'
     testImplementation 'org.junit.jupiter:junit-jupiter-params:5.5.1'
diff --git a/server/protocols/jmap-draft-integration-testing/cassandra-jmap-draft-integration-testing/build.gradle b/server/protocols/jmap-draft-integration-testing/cassandra-jmap-draft-integration-testing/build.gradle
index 24fc688..5df7976 100644
--- a/server/protocols/jmap-draft-integration-testing/cassandra-jmap-draft-integration-testing/build.gradle
+++ b/server/protocols/jmap-draft-integration-testing/cassandra-jmap-draft-integration-testing/build.gradle
@@ -10,11 +10,12 @@ configurations {
 }
 
 dependencies {
-    implementation project(':james-server:james-server-dnsservice-test')
-
+    testImplementation project(':james-server:james-server-dnsservice-test')
     testImplementation project(path: ':james-backends-common:apache-james-backends-es', configuration: 'tests')
+    testImplementation project(':james-backends-common:apache-james-backends-cassandra')
     testImplementation project(path: ':james-backends-common:apache-james-backends-cassandra', configuration: 'tests')
     testImplementation project(':apache-james-mailbox:apache-james-mailbox-api')
+    testImplementation project(':apache-james-mailbox:apache-james-mailbox-cassandra')
     testImplementation project(':apache-james-mailbox:apache-james-mailbox-elasticsearch')
     testImplementation project(path: ':apache-james-mailbox:apache-james-mailbox-scanning-search', configuration: 'tests')
     testImplementation project(':apache-james-mailbox:apache-james-mailbox-spamassassin')
@@ -26,14 +27,19 @@ dependencies {
     testImplementation project(path: ':james-server:james-server-guice:blob-objectstorage-guice', configuration: 'tests')
     testImplementation project(':james-server:james-server-guice:james-server-cassandra-guice')
     testImplementation project(path: ':james-server:james-server-guice:james-server-cassandra-guice', configuration: 'tests')
+    testImplementation project(':james-server:james-server-guice:james-server-guice-common')
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-common', configuration: 'tests')
+    testImplementation project(':james-server:james-server-guice:james-server-guice-imap')
+    testImplementation project(':james-server:james-server-guice:james-server-guice-jmap')
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-jmap', configuration: 'tests')
     testImplementation project(path: ':james-server:jmap-draft-integration-testing:james-server-jmap-draft-integration-testing', configuration: 'tests')
+    testImplementation project(':james-server:james-server-guice:james-server-guice-mailbox')
     testImplementation project(':third-party:apache-james-spamassassin')
     testImplementation project(':james-server:james-server-testing')
     testImplementation project(':james-server:james-server-util')
     testImplementation project(':javax-mail-extension')
 
+    testImplementation 'commons-net:commons-net:3.6'
     testImplementation 'com.github.fge:throwing-lambdas:0.5.0'
     testImplementation 'com.google.inject:guice:4.2.2'
     testImplementation 'io.cucumber:cucumber-guice:2.4.0'
@@ -41,6 +47,7 @@ dependencies {
     testImplementation 'io.cucumber:cucumber-junit:2.4.0'
     testImplementation 'io.rest-assured:rest-assured:4.0.0'
     testImplementation 'net.javacrumbs.json-unit:json-unit-assertj:2.8.0'
+    testImplementation 'org.apache.activemq:activemq-broker:5.15.9'
     testImplementation 'org.apache.james:apache-mime4j-dom:0.8.3'
     testImplementation 'org.apache.pdfbox:pdfbox:2.0.16'
     testImplementation 'org.assertj:assertj-core:3.12.2'
diff --git a/server/protocols/jmap-draft-integration-testing/memory-jmap-draft-integration-testing/build.gradle b/server/protocols/jmap-draft-integration-testing/memory-jmap-draft-integration-testing/build.gradle
index de58fcc..9a8c862 100644
--- a/server/protocols/jmap-draft-integration-testing/memory-jmap-draft-integration-testing/build.gradle
+++ b/server/protocols/jmap-draft-integration-testing/memory-jmap-draft-integration-testing/build.gradle
@@ -10,12 +10,10 @@ configurations {
 }
 
 dependencies {
-    implementation project(':james-server:james-server-dnsservice-test')
-
-    implementation 'org.hamcrest:java-hamcrest:2.0.0.0'
 
     testImplementation project(':apache-james-mailbox:backup')
-    testImplementation project(':apache-james-mailbox:apache-james-mailbox-api')
+    testImplementation project(':apache-james-mailbox:apache-james-mailbox-store')
+    testImplementation project(':apache-james-mailbox:apache-james-mailbox-memory')
     testImplementation project(path: ':apache-james-mailbox:apache-james-mailbox-scanning-search', configuration: 'tests')
     testImplementation project(':apache-james-mailbox:apache-james-mailbox-spamassassin')
     testImplementation project(':apache-mailet:apache-mailet-base')
@@ -23,10 +21,13 @@ dependencies {
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-common', configuration: 'tests')
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-jmap', configuration: 'tests')
     testImplementation project(path: ':james-server:jmap-draft-integration-testing:james-server-jmap-draft-integration-testing', configuration: 'tests')
+    testImplementation project(':james-server:james-server-guice:james-server-guice-common')
     testImplementation project(':james-server:james-server-guice:james-server-memory-guice')
     testImplementation project(path: ':james-server:james-server-guice:james-server-memory-guice', configuration: 'tests')
+    testImplementation project(':james-server:james-server-queue-api')
     testImplementation project(':james-server:james-server-testing')
     testImplementation project(':james-server:james-server-util')
+    testImplementation project(':james-server:james-server-dnsservice-test')
     testImplementation project(':javax-mail-extension')
     testImplementation project(':third-party:apache-james-spamassassin')
 
@@ -37,6 +38,7 @@ dependencies {
     testImplementation 'io.cucumber:cucumber-junit:2.4.0'
     testImplementation 'io.rest-assured:rest-assured:4.0.0'
     testImplementation 'net.javacrumbs.json-unit:json-unit-assertj:2.8.0'
+    testImplementation 'org.hamcrest:java-hamcrest:2.0.0.0'
     testImplementation 'org.apache.pdfbox:pdfbox:2.0.16'
     testImplementation 'org.testcontainers:testcontainers:1.12.0'
 
diff --git a/server/protocols/jmap-draft-integration-testing/rabbitmq-jmap-draft-integration-testing/build.gradle b/server/protocols/jmap-draft-integration-testing/rabbitmq-jmap-draft-integration-testing/build.gradle
index 079f42f..0d89c26 100644
--- a/server/protocols/jmap-draft-integration-testing/rabbitmq-jmap-draft-integration-testing/build.gradle
+++ b/server/protocols/jmap-draft-integration-testing/rabbitmq-jmap-draft-integration-testing/build.gradle
@@ -13,16 +13,20 @@ dependencies {
     testImplementation project(path: ':james-backends-common:apache-james-backends-cassandra', configuration: 'tests')
     testImplementation project(path: ':james-backends-common:apache-james-backends-es', configuration: 'tests')
     testImplementation project(path: ':james-backends-common:apache-james-backends-rabbitmq', configuration: 'tests')
+    testImplementation project(path: ':apache-james-mailbox:apache-james-mailbox-cassandra')
     testImplementation project(path: ':apache-james-mailbox:apache-james-mailbox-api', configuration: 'tests')
     testImplementation project(path: ':apache-james-mailbox:apache-james-mailbox-scanning-search', configuration: 'tests')
     testImplementation project(':third-party:apache-james-spamassassin')
     testImplementation(project(path: ':james-server:james-server-blob:blob-objectstorage', configuration: 'tests'))
+    testImplementation(project(':james-server:james-server-guice:blob-objectstorage-guice'))
     testImplementation(project(path: ':james-server:james-server-guice:blob-objectstorage-guice', configuration: 'tests'))
     testImplementation project(':james-server:james-server-dnsservice-test')
     testImplementation project(path: ':james-server:james-server-guice:james-server-cassandra-guice', configuration: 'tests')
     testImplementation project(':james-server:james-server-guice:james-server-cassandra-rabbitmq-guice')
     testImplementation project(path: ':james-server:james-server-guice:james-server-cassandra-rabbitmq-guice', configuration: 'tests')
     testImplementation project(path: ':james-server:jmap-draft-integration-testing:james-server-jmap-draft-integration-testing', configuration: 'tests')
+    testImplementation project(':james-server:james-server-guice:james-server-guice-common')
+    testImplementation project(':james-server:james-server-guice:james-server-cassandra-guice')
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-common', configuration: 'tests')
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-jmap', configuration: 'tests')
     testImplementation project(':james-server:james-server-testing')
@@ -34,6 +38,7 @@ dependencies {
     testImplementation 'io.cucumber:cucumber-junit:2.4.0'
     testImplementation 'io.rest-assured:rest-assured:4.0.0'
     testImplementation 'net.javacrumbs.json-unit:json-unit-assertj:2.8.0'
+    testImplementation 'org.apache.activemq:activemq-broker:5.15.9'
     testImplementation 'org.apache.pdfbox:pdfbox:2.0.16'
     testImplementation 'org.hamcrest:java-hamcrest:2.0.0.0'
     testImplementation 'org.testcontainers:testcontainers:1.12.0'
diff --git a/server/protocols/jmap-rfc-8621-integration-tests/distributed-jmap-rfc-8621-integration-tests/build.gradle b/server/protocols/jmap-rfc-8621-integration-tests/distributed-jmap-rfc-8621-integration-tests/build.gradle
index 082b080..cd1a134 100644
--- a/server/protocols/jmap-rfc-8621-integration-tests/distributed-jmap-rfc-8621-integration-tests/build.gradle
+++ b/server/protocols/jmap-rfc-8621-integration-tests/distributed-jmap-rfc-8621-integration-tests/build.gradle
@@ -18,8 +18,10 @@ dependencies {
     testImplementation project(path: ':james-server:james-server-guice:james-server-cassandra-guice', configuration: 'tests')
     testImplementation project(':james-server:james-server-guice:james-server-cassandra-rabbitmq-guice')
     testImplementation project(path: ':james-server:james-server-guice:james-server-cassandra-rabbitmq-guice', configuration: 'tests')
+    testImplementation project(':james-server:james-server-guice:james-server-guice-common')
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-common', configuration: 'tests')
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-jmap', configuration: 'tests')
+    testImplementation project(':james-server:james-server-core')
     testImplementation project(':james-server:james-server-testing')
     testImplementation project(':james-server:jmap-rfc-8621-integration-tests:jmap-rfc-8621-integration-tests-common')
 
diff --git a/server/protocols/jmap-rfc-8621-integration-tests/memory-jmap-rfc-8621-integration-tests/build.gradle b/server/protocols/jmap-rfc-8621-integration-tests/memory-jmap-rfc-8621-integration-tests/build.gradle
index 7ed702c..4865963 100644
--- a/server/protocols/jmap-rfc-8621-integration-tests/memory-jmap-rfc-8621-integration-tests/build.gradle
+++ b/server/protocols/jmap-rfc-8621-integration-tests/memory-jmap-rfc-8621-integration-tests/build.gradle
@@ -10,6 +10,7 @@ configurations {
 }
 
 dependencies {
+    testImplementation project(':james-server:james-server-guice:james-server-guice-common')
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-common', configuration: 'tests')
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-jmap', configuration: 'tests')
     testImplementation project(':james-server:james-server-guice:james-server-memory-guice')
diff --git a/server/protocols/webadmin-integration-test/distributed-webadmin-integration-test/build.gradle b/server/protocols/webadmin-integration-test/distributed-webadmin-integration-test/build.gradle
index 9b3613d..c41ce20 100644
--- a/server/protocols/webadmin-integration-test/distributed-webadmin-integration-test/build.gradle
+++ b/server/protocols/webadmin-integration-test/distributed-webadmin-integration-test/build.gradle
@@ -11,21 +11,28 @@ configurations {
 
 dependencies {
     testImplementation project(':apache-mailet:apache-mailet-test')
+    testImplementation project(':apache-james-mailbox:apache-james-mailbox-cassandra')
+    testImplementation project(':apache-james-mailbox:apache-james-mailbox-event-rabbitmq')
+    testImplementation project(':james-server:james-server-guice:blob-objectstorage-guice')
+    testImplementation project(':james-server:james-server-guice:james-server-guice-smtp')
+    testImplementation project(':james-server:james-server-guice:james-server-cassandra-guice')
+    testImplementation project(':james-server:james-server-guice:james-server-cassandra-rabbitmq-guice')
+    testImplementation project(':james-server:james-server-webadmin-cassandra')
+    testImplementation project(':james-server:james-server-webadmin-cassandra-data')
+    testImplementation project(':james-server:webadmin-integration-test:james-server-webadmin-integration-test-common')
+
+    testImplementation project(path: ':apache-james-mailbox:apache-james-mailbox-scanning-search', configuration: 'tests')
     testImplementation project(path: ':james-backends-common:apache-james-backends-es', configuration: 'tests')
     testImplementation project(path: ':james-backends-common:apache-james-backends-cassandra', configuration: 'tests')
     testImplementation project(path: ':james-backends-common:apache-james-backends-rabbitmq', configuration: 'tests')
     testImplementation project(path: ':apache-james-mailbox:apache-james-mailbox-elasticsearch', configuration: 'tests')
-    testImplementation project(path: ':apache-james-mailbox:apache-james-mailbox-scanning-search', configuration: 'tests')
     testImplementation project(path: ':james-server:james-server-blob:blob-objectstorage', configuration: 'tests')
     testImplementation project(path: ':james-server:james-server-guice:blob-objectstorage-guice', configuration: 'tests')
     testImplementation project(path: ':james-server:james-server-guice:james-server-guice-jmap', configuration: 'tests')
     testImplementation project(path: ':james-server:james-server-guice:james-server-cassandra-guice', configuration: 'tests')
     testImplementation project(path: ':james-server:james-server-guice:blob-export-guice', configuration: 'tests')
-    testImplementation project(':james-server:james-server-guice:james-server-cassandra-rabbitmq-guice')
     testImplementation project(path: ':james-server:james-server-guice:james-server-cassandra-rabbitmq-guice', configuration: 'tests')
     testImplementation project(path: ':james-server:james-server-guice:james-server-mailbox-plugin-deleted-messages-vault-guice', configuration: 'tests')
-    testImplementation project(':james-server:james-server-webadmin-cassandra-data')
-    testImplementation project(':james-server:webadmin-integration-test:james-server-webadmin-integration-test-common')
 
     testImplementation 'com.datastax.cassandra:cassandra-driver-core:3.7.2'
     testImplementation 'com.google.inject:guice:4.2.2'


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org