OCI Cloud ShellでのGraalVM Enterprise
このガイドでは、Oracle Cloud Infrastructure (OCI) Cloud ShellでGraalVM Enterprise Editionを開始する方法について説明します。
OCI Cloud Shellは、Oracle Cloudコンソールからアクセスできるブラウザベースの端末です。事前認証済のOCIコマンドライン・インタフェース(CLI)を備えたLinuxシェルと、事前インストール済の開発者ツールにアクセス可能で、5GBのストレージが付属しています。
GraalVM Enterprise JDK 17およびネイティブ・イメージがクラウド・シェルに事前にインストールされています。
ノート: GraalVM Enterpriseは、追加コストなしでOracle Cloud Infrastructure上で使用できます。
クラウド・シェルでGraalVM Enterpriseを使用するステップ
クラウド・シェルには、GraalVM Enterprise JDKなど、事前インストールされたJDKがいくつかあります。
-
csruntimectl java listコマンドを使用して、インストールされたJDKをリストします。次の出力が表示されるはずです。csruntimectl java list出力で、クラウド・シェルに事前にインストールされているJDK (GraalVM JDK for Java 17、Oracle JDK for Java 11およびOracle JDK for Java 8)がリスト表示されます。アスタリスクでマークされたJDKは、現在のJDKです。
-
現在のJDKとしてGraalVM JDK for Java 17を選択します:
csruntimectl java set graalvmeejdk-17確認メッセージが
The current managed java version is set to graalvmeejdk-17と出力されます。 -
ここで、環境変数
PATHおよびJAVA_HOMEの値と、javaのバージョン、native-imageジェネレータを確認します:echo $JAVA_HOMEecho $PATHjava -versionnative-image --version
すべて、クラウド・シェルでGraalVM Enterprise JDKを使用してJavaアプリケーションを実行するように設定されています。
Javaアプリケーションの実行
実行する例は、最小限のRESTベースのアプリケーションで、Mavenを使用してSpring Boot上にビルドされます。pom.xmlファイルは、Spring Native Toolsが機能として追加されたSpring Initializrを使用して生成されました。Spring AOTプラグインは、Springアプリケーションをネイティブ実行可能ファイルに事前に変換します。
-
デモ・リポジトリをクローニングし、アプリケーション・ルート・ディレクトリに移動します:
git clone https://github.com/graalvm/graalvm-demos.gitcd graalvm-demos/spring-native-image -
Mavenを使用してアプリケーションをビルドします(Apache Mavenもクラウド・シェルに事前にインストールされています):
mvn clean packageこれにより、アプリケーションのすべての依存性と正しく構成された
MANIFESTファイルを含む、実行可能なJARファイルが生成されます。 -
Javaアプリケーションを実行します:
java -jar ./target/benchmark-jibber-0.0.1-SNAPSHOT.jar &RESTエンドポイントを呼び出します:
curl http://localhost:8080/jibberナンセンス・バースが出力されます。
アプリケーションを前面に移動します:
fg[Ctrl]+[C]を押して、アプリケーションを終了します。
-
次に、
nativeMavenプロファイルを使用して、このSpring Bootアプリケーションのネイティブ実行可能ファイルをビルドします。mvn -Pnative native:compileこれにより、targetディレクトリ(benchmark-jibberという名前)にLinux用のネイティブ実行可能ファイルが生成されます。
-
次のコマンドを使用して、ネイティブ実行可能ファイルを実行します:
./target/benchmark-jibber &テストするエンドポイントを呼び出します:
curl http://localhost:8080/jibber再度、ナンセンス・バースが出力されます。
アプリケーションを前面に移動します:
fg[Ctrl]+[C]を押して、アプリケーションを終了します。
お疲れ様でした。GraalVM Enterprise JDKおよびネイティブ・イメージを使用して、クラウド・シェルでSpring Boot RESTアプリケーションをビルドおよびテストすることに成功しました。
したがって、OCI Cloud ShellでGraalVM Enterpriseを使用して、Micronaut、Springおよびその他のマイクロサービス・フレームワークで単純なJavaアプリケーションを簡単にビルドおよびテストできます。