Closed yuuhayashi closed 11 months ago
本プロダクトは、「'JOSM'が動作する環境なら'citygml-osm'も動作する」というポリシーのもと、 "citygml-osm"のJava動作環境を「JOSM」のJava実行環境に合わせております。
2023/11/3現在の「JOSM」では「Java 11+」と表記されていますが、「Java 11+」の部分は「Azul Java 21」のページにリンクされており、「Java 21」が推奨されているように見えます。
また、「JOSM」を起動すると、起動画面に「Java 17 」が推奨されてい ます。
JOSM README では、「JRE 8, or later.」となっており、'''JOSM’’’と同じ実行環境とする場合には、LTS版だけでも下記の Java バージョンに対応しなければならなくなります。
一方で、'citygml-osm'では、統合フレームワークに'Apache Camel'を利用しています。(Camelを利用しているおかげで貧弱なマシンでも100時間を超える処理を実行できるようになっています) ところが、Javaの実行環境によって、利用できる'Camel' のバージョンが異なります。
現行(citygml-osm v1.4.13 以前)では '''Camel 2.x''' を利用していたため、
'Camel'のバージョンをかえたパッケージをJavaの実行環境ごとにリリースすることで問題は解決するのですが、個人でこれをやるほどの労力をかけられない。というのが現実です。
現行の「citygml-osm」が対応しているJava実行環境を表にまとめると、
となっていますが、今のままでは「'''JOSMが推奨しているJava17では動作しない'''」ことになります。
「JOSM」が推奨している「Java 17」を動作条件とするように変更します。
となります。 現在のところ、Java21はサポート対象外となりますが、Camelの開発が進めば Java 21 もサポートされると見込まれます。
v2.1.0 で対応しました。
「citygml-osm」のJava実行環境に関する問題点
'citygml-osm'の動作条件ポリシー
本プロダクトは、「'JOSM'が動作する環境なら'citygml-osm'も動作する」というポリシーのもと、 "citygml-osm"のJava動作環境を「JOSM」のJava実行環境に合わせております。
「JOSM]の実行条件
2023/11/3現在の「JOSM」では「Java 11+」と表記されていますが、「Java 11+」の部分は「Azul Java 21」のページにリンクされており、「Java 21」が推奨されているように見えます。
また、「JOSM」を起動すると、起動画面に「Java 17 」が推奨されてい ます。
JOSM README では、「JRE 8, or later.」となっており、'''JOSM’’’と同じ実行環境とする場合には、LTS版だけでも下記の Java バージョンに対応しなければならなくなります。
「citygml-osm」と Javaのバージョンとの関係
一方で、'citygml-osm'では、統合フレームワークに'Apache Camel'を利用しています。(Camelを利用しているおかげで貧弱なマシンでも100時間を超える処理を実行できるようになっています) ところが、Javaの実行環境によって、利用できる'Camel' のバージョンが異なります。
現行(citygml-osm v1.4.13 以前)では '''Camel 2.x''' を利用していたため、
'Camel'のバージョンをかえたパッケージをJavaの実行環境ごとにリリースすることで問題は解決するのですが、個人でこれをやるほどの労力をかけられない。というのが現実です。
現行の「citygml-osm」が対応しているJava実行環境を表にまとめると、
対応可否
対応
となっていますが、今のままでは「'''JOSMが推奨しているJava17では動作しない'''」ことになります。
'citygml-osm'の動作条件ポリシーの変更
「JOSM」が推奨している「Java 17」を動作条件とするように変更します。
対応可否
対応
となります。 現在のところ、Java21はサポート対象外となりますが、Camelの開発が進めば Java 21 もサポートされると見込まれます。
懸念点