Installation
The installation documentation will explain all the different possibilities to install Sakura Boot to build an application.
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 the basic functionalities of sakura boot, the necessary spring boot starter, and a runtime postgresql.
<dependency>
<groupId>org.sansenshimizu.sakuraboot</groupId>
<artifactId>sakura-boot-starter-predefined-basic</artifactId>
<version>0.1.1</version>
</dependency>
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>
Custom dependencies
To install with custom dependencies, add one starter to the project dependencies:
This includes only the basic functionalities of sakura boot.
<dependency>
<groupId>org.sansenshimizu.sakuraboot</groupId>
<artifactId>sakura-boot-starter-basic</artifactId>
<version>0.1.1</version>
</dependency>
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>
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 the basic functionalities of sakura boot, the necessary spring boot starter, and a runtime postgresql test container.
<dependency>
<groupId>org.sansenshimizu.sakuraboot</groupId>
<artifactId>sakura-boot-starter-predefined-basic-functional-test</artifactId>
<version>0.1.1</version>
<scope>test</scope>
</dependency>
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>
Integration tests
This includes the basic functionalities of sakura boot, the necessary spring boot starter, and a runtime h2 in-memory database.
<dependency>
<groupId>org.sansenshimizu.sakuraboot</groupId>
<artifactId>sakura-boot-starter-predefined-basic-integration-test</artifactId>
<version>0.1.1</version>
<scope>test</scope>
</dependency>
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>
Custom dependencies
To install with custom dependencies, add one starter to the project dependencies:
Functional tests
This includes only the basic functionalities of sakura boot.
<dependency>
<groupId>org.sansenshimizu.sakuraboot</groupId>
<artifactId>sakura-boot-starter-basic-functional-test</artifactId>
<version>0.1.1</version>
<scope>test</scope>
</dependency>
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>
Integration tests
This includes only the basic functionalities of sakura boot.
<dependency>
<groupId>org.sansenshimizu.sakuraboot</groupId>
<artifactId>sakura-boot-starter-basic-integration-test</artifactId>
<version>0.1.1</version>
<scope>test</scope>
</dependency>
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>
Unit tests
This includes only the basic functionalities of sakura boot.
<dependency>
<groupId>org.sansenshimizu.sakuraboot</groupId>
<artifactId>sakura-boot-starter-basic-unit-test</artifactId>
<version>0.1.1</version>
<scope>test</scope>
</dependency>
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>
Customisation
For more fine-grained control over dependencies, import directly from each module and don’t use starters:
This includes the basic module with the core and log 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-basic</artifactId>
<version>0.1.1</version>
</dependency>
The same can be applied with all the other modules of sakura boot.
The different artifactId are the following:
-
sakura-boot-basic
-
sakura-boot-log
-
sakura-boot-cache
-
sakura-boot-mapper
-
sakura-boot-specification
-
sakura-boot-hypermedia
-
sakura-boot-openapi
And for the test modules, the different artifactId are the following:
-
sakura-boot-basic-test
-
sakura-boot-cache-test
-
sakura-boot-mapper-test
-
sakura-boot-specification-test
-
sakura-boot-hypermedia-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 the basic functionalities of sakura boot, the necessary spring boot starter, and a runtime postgresql.
implementation("org.sansenshimizu.sakuraboot:sakura-boot-starter-predefined-basic:0.1.1")
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")
Custom dependencies
To install with custom dependencies, add one starter to the project dependencies:
This includes only the basic functionalities of sakura boot.
implementation("org.sansenshimizu.sakuraboot:sakura-boot-starter-basic:0.1.1")
This includes all the modules of sakura boot.
implementation("org.sansenshimizu.sakuraboot:sakura-boot-starter-all-module:0.1.1")
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 the basic functionalities of sakura boot, the necessary spring boot starter, and a runtime postgresql test container.
functionalTestImplementation("org.sansenshimizu.sakuraboot:sakura-boot-starter-predefined-basic-functional-test:0.1.1")
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")
Integration tests
This includes the basic functionalities of sakura boot, the necessary spring boot starter, and a runtime h2 in-memory database.
integrationTestImplementation("org.sansenshimizu.sakuraboot:sakura-boot-starter-predefined-basic-integration-test:0.1.1")
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")
Custom dependencies
To install with custom dependencies, add one starter to the project dependencies:
Functional tests
This includes only the basic functionalities of sakura boot.
functionalTestImplementation("org.sansenshimizu.sakuraboot:sakura-boot-starter-basic-functional-test:0.1.1")
This includes all the modules of sakura boot.
functionalTestImplementation("org.sansenshimizu.sakuraboot:sakura-boot-starter-all-module-functional-test:0.1.1")
Integration tests
This includes only the basic functionalities of sakura boot.
integrationTestImplementation("org.sansenshimizu.sakuraboot:sakura-boot-starter-basic-integration-test:0.1.1")
This includes all the modules of sakura boot.
integrationTestImplementation("org.sansenshimizu.sakuraboot:sakura-boot-starter-all-module-integration-test:0.1.1")
Unit tests
This includes only the basic functionalities of sakura boot.
testImplementation("org.sansenshimizu.sakuraboot:sakura-boot-starter-basic-unit-test:0.1.1")
This includes all the modules of sakura boot.
testImplementation("org.sansenshimizu.sakuraboot:sakura-boot-starter-predefined-all-module-unit-test:0.1.1")
Customisation
For more fine-grained control over dependencies, import directly from each module and don’t use starters:
This includes the basic module with the core and log module of sakura boot and only necessary dependencies (e.g., spring-core, jakarta-persistence-api, etc).
implementation("org.sansenshimizu.sakuraboot:sakura-boot-basic:0.1.1")
The same can be applied with all the other modules of sakura boot.
The different artifactId are the following:
-
sakura-boot-basic
-
sakura-boot-log
-
sakura-boot-cache
-
sakura-boot-mapper
-
sakura-boot-specification
-
sakura-boot-hypermedia
-
sakura-boot-openapi
And for the test modules, the different artifactId are the following:
-
sakura-boot-basic-test
-
sakura-boot-cache-test
-
sakura-boot-mapper-test
-
sakura-boot-specification-test
-
sakura-boot-hypermedia-test
-
sakura-boot-integration-test
-
sakura-boot-functional-test