Java RTC CPackによる rpm 作成 動作確認¶
RTCBuilder が生成するJava RTCのソースコードをビルド、パッケージ作成、パッケージのインストール、パッケージのアンインストールを実施して、問題がないことを確認します。
以下がインストールされていることを前提とします。
| ソフトウエア |
|
| OpenRTM-aist |
3言語(C++、Java、Python)+ツール(Eclipse+rtshell) |
| CMake |
MakeFileを生成します。 |
| JDK |
RTCをビルドするために必要です。 |
| ant |
| WiX Toolset |
msiを生成するために必要です。 |
| Graphviz |
確認の流れ¶
- RTCBuilder で Java の RTC を生成
- ビルド
- CMake
- CPack
- インストール
- 起動と終了
- アンインストール
RTCBuilder で Java の RTC を生成¶
データポート、サービスポート、コンフィグレーションを持つRTCを生成します。
以下の設定でコード生成します。
| タブ |
項目 |
設定 |
| 基本プロファイル |
モジュール名 |
JavaRTCTest |
| バージョン |
3.1.4 |
| モジュールカテゴリ |
Tests |
| アクティビティ |
onExecute |
ON |
| データポート |
ポート名(InPort) |
foo |
| データ型 |
TimedString |
| ポート名(OutPort) |
bar |
| データ型 |
TimedString |
| サービスポート |
IDLファイル |
C:\Program Files (x86)\OpenRTM-aist\1.2.0\Components\Java\RTMExamples\SimpleService\MyService.idl |
| インターフェース型 |
MyService |
| コンフィギュレーション |
データ型 |
int |
| デフォルト値 |
1 |
| 言語・環境 |
Java |
ON |
ビルド¶
コード生成後、Javaパースペクティブを開いて、build_JavaRTCTest.xml のファイルを右クリックし、[実行]-[1 Ant ビルド] を選択します。
これでビルドが開始されます。
✔ コンソールウィンドウにエラーが表示されずにビルドが終了することを確認します。
✔ workspaceのプロジェクトのbinにclassファイルがあることを確認します。
classファイル一覧...classファイル一覧...
| JavaRTCTest.class |
| JavaRTCTestComp.class |
| JavaRTCTestImpl.class |
| EchoListHelper.class |
| EchoListHolder.class |
| MyService.class |
| MyServiceHelper.class |
| MyServiceHolder.class |
| MyServiceOperations.class |
| MyServicePOA.class |
| MyServiceSVC_impl.class |
| ValueListHelper.class |
| ValueListHolder.class |
| _MyServiceStub.class |
✔
workspace のプロジェクトのdocにhtmlファイルがあることを確認します。
htmlファイル一覧...htmlファイル一覧...
| EchoListHelper.html |
| EchoListHolder.html |
| JavaRTCTest.html |
| JavaRTCTestComp.html |
| JavaRTCTestImpl.html |
| MyService.html |
| MyServiceHelper.html |
| MyServiceHolder.html |
| MyServiceOperations.html |
| MyServicePOA.html |
| MyServiceSVC_impl.html |
| ValueListHelper.html |
| ValueListHolder.html |
| _MyServiceStub.html |
| allclasses-frame.html |
| allclasses-noframe.html |
| constant-values.html |
| deprecated-list.html |
| help-doc.html |
| index.html |
| overview-tree.html |
| package-frame.html |
| package-summary.html |
| package-tree.html |
| package-use.html |
| serialized-form.html |
CMake¶
cmake を実行します。
$ mkdir build
$ cd build
$ cmake ../
✔
エラーがないことを確認します。
CPack¶
cpackを実行します。
$ cpack
✔
エラーなくcpackが終了することを確認します。✔
「JavaRTCTest-3.1.4-x86_64.rpm」が生成されていることを確認します。
インストール¶
$ sudo rpm -i JavaRTCTest-3.1.4-x86_64.rpm
✔
エラーなくインストールが完了することを確認します。✔
指定のフォルダに必要なものがインストールされているこを確認します。
構成...構成...
+--usr
+--share
+--openrtm-<version>
+--components
+--java
+--Tests
+--JavaRTCTest
+--CMakeLists.txt
+--CMakeLists.txt
+--JavaRTCTest.conf
+--JavaRTCTest.sh
+--JavaRTCTest.class
+--JavaRTCTestComp.class
+--JavaRTCTestImpl.class
+--<IDLモジュール名>SVC_impl.class
+--RTC.xml
+--rtc.conf
+--EchoListHelper.class
+--EchoListHolder.class
+--MyService.class
+--MyServiceHelper.class
+--MyServiceHolder.class
+--MyServiceOperations.class
+--MyServicePOA.class
+--ValueListHelper.class
+--ValueListHolder.class
+--_MyServiceStub.class
+--html
+--EchoListHelper.html
+--EchoListHolder.html
+--JavaRTCTest.html
+--JavaRTCTestComp.html
+--JavaRTCTestImpl.html
+--MyService.html
+--MyServiceHelper.html
+--MyServiceHolder.html
+--MyServiceOperations.html
+--MyServicePOA.html
+--MyServiceSVC_impl.html
+--ValueListHelper.html
+--ValueListHolder.html
+--_MyServiceStub.html
+--allclasses-frame.html
+--allclasses-noframe.html
+--constant-values.html
+--deprecated-list.html
+--help-doc.html
+--index.html
+--overview-tree.html
+--package-frame.html
+--package-summary.html
+--package-tree.html
+--package-use.html
+--serialized-form.html
起動と終了¶
インストールしたJavaRTCTestを実行します。
$ /usr/share/openrtm-1.2/components/java/Tests/JavaRTCTest/JavaRTCTest.sh
✔
画面にエラーが表示されずに起動することを確認します。✔
RTSystemEditorのネームサービスビューに JavaRTCTest0|rtc があることを確認します。ネームサービスビューに JavaRTCTest0|rtc を右クリックして[Exit]をクリックします。
✔
JavaRTCTestが終了することを確認します。
アンインストール¶
$ sudo rpm -e JavaRTCTest
✔
アンインストールが実行されエラーなく完了することを確認します。✔
インストールしたファイルが削除されていることを確認します。