OCI Code EditorでのOracle GraalVM
このガイドでは、Oracle Cloud Infrastructure (OCI) Code EditorでOracle GraalVMを開始する方法について説明します。
OCI Code Editorには、Oracle Cloudコンソールとローカル開発環境を切り替える必要なくコードを編集できる、豊富なコンソール内編集環境が用意されています。コード・エディタを使用すると、OCIサービスのコードをOCIコンソールから直接編集およびデプロイできます。
Oracle GraalVM for JDK 17はクラウド・シェルに事前にインストールされているため、開発マシンをインストールして構成する必要はありません。コード・エディタをクラウド・シェルと統合すると、直接アクセスできます。
ノート: Oracle GraalVMライセンスとサポートは、追加コストなしでOracle Cloud Infrastructureサブスクリプションに含まれています。
OCI Code EditorでのJavaアプリケーションの作成および実行
ステップ1: コード・エディタで端末を開く
- Oracle Cloudコンソールにログインし、コード・エディタを起動します。
- コード・エディタで、「端末」メニューから「新規端末」をクリックして、端末を開きます。
ステップ2: GraalVM JDKをデフォルトのJDKとして選択
csruntimectl java listコマンドを使用して、インストールされたJDKをリストします。csruntimectl java list出力には、クラウド・シェルに事前インストールされているJDK (Oracle GraalVM for JDK 17、Oracle JDK 11およびOracle JDK 8)がリストされます。アスタリスクでマークされたJDKは、現在のJDKです。
- 現在のJDKとして「Oracle GraalVM for JDK 17」を選択します:
csruntimectl java set graalvmjdk-17確認メッセージが"The current managed java version is set to graalvmjdk-17"と出力されます。
- ここで、環境変数
PATHおよびJAVA_HOMEの値と、javaのバージョン、native-imageツールを確認します:echo $JAVA_HOMEecho $PATHjava -versionnative-image --version
ステップ3: Javaプロジェクトの設定および実行
- デモ・リポジトリをクローニングし、OCI Code Editorで開きます。これを行うには、次のコマンドを1つずつ実行します:
git init graalvmee-java-hello-worldcd graalvmee-java-hello-worldgit remote add origin https://github.com/oracle-devrel/oci-code-editor-samples.gitgit config core.sparsecheckout trueecho "java-samples/graalvmee-java-hello-world/*">>.git/info/sparse-checkoutgit pull --depth=1 origin maincd java-samples/graalvmee-java-hello-world/コード・エディタでサンプル・コードを表示/編集できるようになりました。
- サンプル・アプリケーションを実行可能なJARファイルにパッケージ化します:
mvn clean package - JARファイルを実行します:
java -jar target/my-app-1.0-SNAPSHOT.jar"Hello World!"と出力されます。
ステップ4: ネイティブ実行可能ファイルのビルドおよび実行
このJavaアプリケーションには、Apache Mavenを使用してネイティブ実行可能ファイルをビルドするためのサポートを追加するGraalVMネイティブ・イメージ用のMavenプラグインが組み込まれています。テスト目的で、まずクイック・ビルド・モードを有効にしてネイティブ実行可能ファイルをビルドし、次に無効にしてビルドします。
クイック・ビルド・モード有効
- クイック・ビルド・モードを有効にするには、次のようにpom.xmlでこの行のコメントを解除します:
<quickBuild>true</quickBuild> nativeMavenプロファイルを使用して、ネイティブ実行可能ファイルをビルドします:mvn clean -Pnative -DskipTests packageこれにより、targetディレクトリ(my-appという名前)にLinux用のネイティブ実行可能ファイルが生成されます。
- アプリケーション・ネイティブ実行可能ファイルをバックグラウンドで実行します:
./target/my-app
クイック・ビルド・モード無効
- クイック・ビルド・モードを無効にするには、pom.xml内のこの行を次のようにコメントアウトします:
<!-- <quickBuild>true</quickBuild> --> - ネイティブ実行可能ファイルを再度ビルドします:
mvn clean -Pnative -DskipTests packageこれにより、ネイティブ実行可能ファイルmy-appがtargetディレクトリに生成され、前の実行可能ファイルが置き換えられます。クイック・ビルド・モードによって、ネイティブ実行可能ファイルの生成に必要な時間が短縮され、一般的な開発サイクル(コンパイル、テストおよびデバッグ)でネイティブ・イメージを簡単に使用できるようになったことにお気づきでしょう。ただし、生成された実行可能ファイルのサイズが大きくなり、ピーク・パフォーマンスが低下します。クイック・ビルド・モードは、開発目的でのみ推奨されます。
- ネイティブ実行可能ファイルを実行します:
./target/my-app
お疲れ様でした。Oracle Cloudコンソールとローカル開発環境を切り替える必要なく、OCI Code EditorでOracle GraalVMを使用してネイティブ実行可能ファイルを正常にビルドおよび実行しました。コード・エディタを使用すると、迅速なコーディング・タスクが実現し、OCIコンソールから直接アプリケーションを実行できます。