Installation

The installation documentation will explain all the different possibilities to install the Sakura Boot specification module to build an application using filtering.

Prerequisites

See Requirements for prerequisites.

Maven

Maven is recommended for developers who never use both Maven and Gradle.

Predefined dependencies

To install with predefined dependencies for a production-ready application, add one starter to the project dependencies:

This includes all the modules of sakura boot, the necessary spring boot starter, mapstruct, ehcache3 as cache provider, and a runtime postgresql.

<dependency>
    <groupId>org.sansenshimizu.sakuraboot</groupId>
    <artifactId>sakura-boot-starter-predefined-all-module</artifactId>
    <version>0.1.1</version>
</dependency>
xml

Custom dependencies

To install with custom dependencies, add one starter to the project dependencies:

This includes all the modules of sakura boot.

<dependency>
    <groupId>org.sansenshimizu.sakuraboot</groupId>
    <artifactId>sakura-boot-starter-all-module</artifactId>
    <version>0.1.1</version>
</dependency>
xml

Test dependencies

The test dependencies are available for unit tests, integration tests, and functional tests.
Integration and functional tests are available both with predefined starter and custom starter. There is no predefined starter for unit test.

Predefined dependencies

To install with predefined dependencies for a production-ready application, add one starter to the project dependencies:

Functional tests

This includes all the modules of sakura boot, the necessary spring boot starter, mapstruct, and a runtime postgresql test container.

<dependency>
    <groupId>org.sansenshimizu.sakuraboot</groupId>
    <artifactId>sakura-boot-starter-predefined-all-module-functional-test</artifactId>
    <version>0.1.1</version>
    <scope>test</scope>
</dependency>
xml
Integration tests

This includes all the modules of sakura boot, the necessary spring boot starter, mapstruct, and a runtime h2 in-memory database.

<dependency>
    <groupId>org.sansenshimizu.sakuraboot</groupId>
    <artifactId>sakura-boot-starter-predefined-all-module-integration-test</artifactId>
    <version>0.1.1</version>
    <scope>test</scope>
</dependency>
xml

Custom dependencies

To install with custom dependencies, add one starter to the project dependencies:

Functional tests

This includes all the modules of sakura boot.

<dependency>
    <groupId>org.sansenshimizu.sakuraboot</groupId>
    <artifactId>sakura-boot-starter-all-module-functional-test</artifactId>
    <version>0.1.1</version>
    <scope>test</scope>
</dependency>
xml
Integration tests

This includes all the modules of sakura boot.

<dependency>
    <groupId>org.sansenshimizu.sakuraboot</groupId>
    <artifactId>sakura-boot-starter-all-module-integration-test</artifactId>
    <version>0.1.1</version>
    <scope>test</scope>
</dependency>
xml
Unit tests

This includes all the modules of sakura boot.

<dependency>
    <groupId>org.sansenshimizu.sakuraboot</groupId>
    <artifactId>sakura-boot-starter-all-module-unit-test</artifactId>
    <version>0.1.1</version>
    <scope>test</scope>
</dependency>
xml

Customisation

For more fine-grained control over dependencies, import directly from the specification module and don’t use starters:

This includes the specification module with the core and the basic module of sakura boot and only necessary dependencies (e.g., spring-core, jakarta-persistence-api, etc).

<dependency>
    <groupId>org.sansenshimizu.sakuraboot</groupId>
    <artifactId>sakura-boot-specification</artifactId>
    <version>0.1.1</version>
</dependency>
xml

And for the test modules, the different artifactId are the following:

  • sakura-boot-specification-test

  • sakura-boot-integration-test

  • sakura-boot-functional-test

Gradle

Predefined dependencies

To install with predefined dependencies for a production-ready application, add one starter to the project dependencies:

This includes all the modules of sakura boot, the necessary spring boot starter, mapstruct, ehcache3 as cache provider, and a runtime postgresql.

implementation("org.sansenshimizu.sakuraboot:sakura-boot-starter-predefined-all-module:0.1.1")
kotlin

Custom dependencies

To install with custom dependencies, add one starter to the project dependencies:

This includes all the modules of sakura boot.

implementation("org.sansenshimizu.sakuraboot:sakura-boot-starter-all-module:0.1.1")
kotlin

Test dependencies

The test dependencies are available for unit tests, integration tests, and functional tests.
Integration and functional tests are available both with predefined starter and custom starter. There is no predefined starter for unit test.

Predefined dependencies

To install with predefined dependencies for a production-ready application, add one starter to the project dependencies:

Functional tests

This includes all the modules of sakura boot, the necessary spring boot starter, mapstruct, and a runtime postgresql test container.

functionalTestImplementation("org.sansenshimizu.sakuraboot:sakura-boot-starter-predefined-all-module-functional-test:0.1.1")
kotlin
Integration tests

This includes all the modules of sakura boot, the necessary spring boot starter, mapstruct, and a runtime h2 in-memory database.

integrationTestImplementation("org.sansenshimizu.sakuraboot:sakura-boot-starter-predefined-all-module-integration-test:0.1.1")
kotlin

Custom dependencies

To install with custom dependencies, add one starter to the project dependencies:

Functional tests

This includes all the modules of sakura boot.

functionalTestImplementation("org.sansenshimizu.sakuraboot:sakura-boot-starter-all-module-functional-test:0.1.1")
kotlin
Integration tests

This includes all the modules of sakura boot.

integrationTestImplementation("org.sansenshimizu.sakuraboot:sakura-boot-starter-all-module-integration-test:0.1.1")
kotlin
Unit tests

This includes all the modules of sakura boot.

testImplementation("org.sansenshimizu.sakuraboot:sakura-boot-starter-predefined-all-module-unit-test:0.1.1")
kotlin

Customisation

For more fine-grained control over dependencies, import directly from the specification module and don’t use starters:

This includes the specification module with the core and the basic module of sakura boot and only necessary dependencies (e .g., spring-core, jakarta-persistence-api, etc).

implementation("org.sansenshimizu.sakuraboot:sakura-boot-specification:0.1.1")
kotlin

And for the test modules, the different artifactId are the following:

  • sakura-boot-specification-test

  • sakura-boot-integration-test

  • sakura-boot-functional-test