Google ColabでJavaを使う

Jupyter for JavaというのがInfoQで紹介されていたので試してみました。
Java News Roundup: JDK 22, Spring CVEs, Liberica JDK, JDKMon 21, Jupyter for Java, Gradle 8.5

Jupyter notebookでJavaを使うためのいろいろをまとめたGitHub organizationらしい。
https://github.com/jupyter-java

やってみたのがこれ。

まずGoogle Colabを開く
https://colab.research.google.com/

で、「ノートブックを新規作成」

ここで「ノートブックの設定」を見てみる。

「ランタイムのタイプ」にPython 3とRだけある。まだJavaは使えないことを確認。

とりあえずJavaのバージョン確認。11が入ってる。

17とか21が使いたければ、aptでインストールを。

Jupyter for Javaのページの「Installing in online Jupyter notebooks」の4行をコピー
https://github.com/jupyter-java

こんな感じになってる。

!pip install jbang
import jbang
jbang.exec("trust add https://github.com/jupyter-java")
jbang.exec("install-kernel@jupyter-java")

貼り付けて実行

30秒くらい待つと「ランタイムのタイプ」でJavaが選べるようになる。

そうするといろいろとJavaっぽいものが動かせるようになる。

%mavenMavenリポジトリからのライブラリインストールもできる。

%maven org.knowm.xchart:xchart:3.5.2

ので、こんなこともできる。

import org.knowm.xchart.*;

double[] xData = {0.0, 1.0, 2.0};
double[] yData = {2.0, 1.0, 0.0};

XYChart chart = QuickChart.getChart("Sample Chart", "X", "Y", "y(x)", xData, yData);

BitmapEncoder.getBufferedImage(chart);

こうなる。

実行環境としてはIJavaがインストールされるので、ノートブック上の使い方はこちらを。
https://github.com/SpencerPark/IJava