第1章 Spring Boot スタンドアロンの使用
1.1. Spring Boot スタンドアロンデプロイメントモード
スタンドアロンデプロイメントモードでは、Spring Boot アプリケーションは Jar ファイルとしてパッケージ化され、Java 仮想マシン(JVM)内で直接実行されます。つまり、Spring Boot アプリケーションは、java
コマンドと -jar
オプションを提供すれば直接実行できます。以下に例を示します。
java -jar SpringBootApplication.jar
Spring Boot は、実行可能な Jar のメインクラスを提供します。
アプリケーションをパッケージ化および実行するこの方法は、サービスが最小限の要件でパッケージ化されるマイクロサービスの概念と一致しています。コンテナーも最小で、JVM 自体になります。
Fuse で Spring Boot スタンドアロンアプリケーションをビルドするには、以下が必要です。
Fuse BOM (Bill of Materials): Red Hat Maven リポジトリーから、厳選された依存関係のセットを定義します。BOM は、Maven の 依存関係管理 メカニズムを利用して、適切なバージョンの Maven 依存関係を定義します。
Fuse BOM で定義された依存関係のみが Red Hat によってサポートされることに注意してください。
- Spring Boot Maven プラグインは、Maven で スタンドアロン Spring Boot アプリケーションのビルドプロセスを実装します。このプラグインは、Spring Boot アプリケーションを実行可能な Jar ファイルとしてパッケージ化します。
1.1.1. Spring Boot 2 へのデプロイ
Spring Boot 1 に加えて、Spring Boot 2 にデプロイするオプションもあります。
OpenShift のデプロイメントのモードに関する詳細は、Fuse on OpenShift ガイド を参照してください。
Spring Boot 1 と Spring Boot 2 の相違点はすべて、Spring Boot の Migration Guide と Spring Boot 2 リリースノート を参照してください。
1.1.1.1. Spring Boot 2 の新しい Camel コンポーネント
Spring Boot 2 は Camel バージョン 2. 23
をサポートしているため、Spring Boot 1 では利用できない新しい camel コンポーネントの一部をサポートします。
Spring Boot 2 の新しい Camel コンポーネント
- as2-component
- aws-iam-component
- fhir-component
- google-calendar-stream-component
- google-mail-stream-component
- google-sheets-component
- google-sheets-stream-component
- ipfs コンポーネント
- kubernetes-hpa-component
- kubernetes-job-component
- micrometer-component
- mybatis-bean-component
- nsq-component
- rxjava2
- service-component
- spring-cloud-consul
- spring-cloud-zookeeper
- testcontainers-spring
- testcontainers
- web3j-component