Java SE 11以降でOpenRTM-aist Java版を動作させる手順

Java SE 11以降のバージョンではORB実装が削除されているため、基本的にはOpenRTM-aist Java版を動作させることができません。 このページでは代替ライブラリのJBoss OpenJDK ORBを使う手順を説明します。

Apache Mavenのインストール

Apache Mavenのインストールのため、Windows環境ではChocolateyかScoopのインストールが必要です。 以下はScoopをインストールするコマンドです。

 Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
 Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression

次にApache Mavenをインストールします。

 mvn dependency:copy-dependencies -DoutputDirectory=deps

JARファイルの取得

OpenRTM-aist JavaはApache Mavenに未対応のため、JBoss OpenJDK ORBのJARファイルを入手してクラスパスに設定します。 以下の内容のpom.xmlを作成してください。

 <project xmlns="http://maven.apache.org/POM/4.0.0">
   <modelVersion>4.0.0</modelVersion>
 
   <groupId>example</groupId>
   <artifactId>deps</artifactId>
   <version>1.0</version>
 
   <dependencies>
     <dependency>
       <groupId>org.jboss.openjdk-orb</groupId>
       <artifactId>openjdk-orb</artifactId>
       <version>10.1.1.Final</version>
     </dependency>
   </dependencies>
 </project>

以下のコマンドでdepsフォルダにopenjdk-orb-10.1.3.Final.jarjakarta.transaction-api-2.0.1.jarの2つのファイルが格納されます。

 mvn dependency:copy-dependencies -DoutputDirectory=deps

RTC起動スクリプトの修正

RTC Builderで生成したRTC起動のバッチファイルについて、CLASSPATHという変数にopenjdk-orb-10.1.3.Final.jar;jakarta.transaction-api-2.0.1.jarを追加すれば完了です。

 set CLASSPATH=.;%JAR_BASE%%FILE1%;%JAR_BASE%%FILE2%;%JAR_BASE%%FILE3%;%JAR_BASE%%FILE4%;%~dp0\bin;openjdk-orb-10.1.3.Final.jar;jakarta.transaction-api-2.0.1.jar

IDLコンパイルが必要な場合について

サービスポートや独自データ型を使う場合については、現状ではJDK 9以前のバージョンでビルドするしかありません。