プロジェクト

全般

プロフィール

Eclipse4.7.3ベースのRCP版RTSystemEditorの作成手順

ここで作成するRCP版RTSystemEditorは、OpenRTM-aistのWindows用インストーラに含まれます。
このインストーラには、jre(OpenJDK8のWindows版)も含まれます。

ソースのバージョン管理を subversion から GitHub へ移行したのを機に、ソースディレクトリ名が rtmtools -> OpenRTP-aist に変更されました

準備

Eclipseのダウンロード

  • "Eclipse for RCP and RAP Developers"をダウンロードする
  • 展開する場所が深いとパスが長くなるとEclipseから警告が出るので、ここではD:\RCP下に展開する(D:\RCP\eclipse)

OpenRTP-aistソースの用意

  • OpenRTPのバージョン1.2までが Eclipse4.7.3 をベースにしているので、適当な場所(D:\RCP)にソースをcloneしたらブランチを RELENG_1_2 へ切り替える
    $ cd RCP
    $ git clone https://github.com/OpenRTM/OpenRTP-aist.git
    $ cd OpenRTP-aist
    $ git checkout RELENG_1_2 
    
  • ビルドスクリプト buildall.bat を実行してビルドする
    >set ECLIPSE_HOME=D:\RCP\eclipse
    >buildall.bat
    
    • 各プラグインの MANIFEST.MF に記載されているバージョン番号は、ビルドスクリプトの実行により更新される
    • 本スクリプトを実行せず、旧情報の手順によりEclipse上でビルドすると、正しいバージョン番号にならないので注意

RCP版RTSystemEditor作成手順

Eclipseの起動

  • D:\RCP\eclipse\eclipse.exe をダブルクリックする
    • 32bit版Javaにパスが通っていないため起動できなかった場合の対応
    • この32bit版のeclipseを起動したいだけなので、下記のようなbatファイルをeclipse.exeディレクトリに置けば起動できる
      set PATH=%ProgramFiles(x86)%\Java\jdk1.8.0_201\bin;%PATH%
      eclipse.exe
      
  • "ワークスペースの選択"ダイアログにて、OpenRTP-aistを指定する。(D:\RCP\OpenRTP-aist)

パッケージのインポート

  1. Projectウィンドウ上で右クリックし、Importを選択
  2. "General" > "Existing Projects into Workspace"
  3. "ルート・ディレクトリーの選択(T)"にてOpenRTP-aistのフォルダ(D:\RCP\OpenRTP-aist)を指定する。
  4. "プロジェクト(P)"の欄にて、"jp.go.aist.rtcbuilder"関連のチェックを外しし、"完了(F)"をクリックする。
  • buildall.bat によりビルド済みなので、RCPのエクスポートへ進んでください
  • デフォルトの設定で自動的にビルドが開始された場合でも、既にビルドが通っていますのでエラーにはならないはずです

RCPのエクスポート

  • パッケージ・エクスプローラー上のjp.go.aist.rtm.systemeditor.RCPの+印をクリックし展開後"RTSystemEditor.product"をダブルクリックする。
  • RTSystemEditor.productの"Configuration"タブ内、"Add Recommended..."をクリックし、OKで追加する。
  • RTSystemEditor.productの"Overview"タブ内、"Eclipse Product export wizard"をクリックする。
  • Exportウィザードの"Destination"欄の"Directory"にて任意のディレクトリ(完成品の出力先)を指定し"Finish"をクリックする。
  • ここでは D:\RCP\output と指定。(下記キャプチャ画像は使いまわしているので c:¥work¥output となっています。)
  • エクスポートが成功した場合、指定したディレクトリにeclipseというフォルダが作成されている。
  • 注意! 2020/06/10記
  • 現在の手順は、RCP版を更新する際は上記の手順を必ず行う必要がある
    • 現状:RCP版のビルドはWindows上で行うので、buildall.batで実行している
    • 以前はIDLコンパイルのために、jp.go.aist.rtm.toolscommon下のbuildlForClient.xmlをantでビルドしていた
    • この2通りのビルドで、RCP版のMANIFEST.MFに差ができる。含められている記述が一方にしか無い等の違いがでる
    • RCP版jarを生成した際のopenrtmプラグインをそのまま使えば問題なく起動できるので、リポジトリに登録していたRTSE.zipは展開後、
      output¥eclipse下のconfiguration, p2, plugins, RTSystemEditor.exeと差し替える
  • 以前は下記の手順でした
    • ベースのEclipseバージョンを変更した場合、または、OpenRTPのバージョン番号を更新した場合はこの手順でビルドする必要があります
    • 1度作成したものをマージモジュール作成スクリプト設定(RTSE-msm-buildtool)に登録しているので、上記の変更が無ければ使い続けます

旧情報

rtmtoolsソースの用意

  • ビルド済みrtmtoolsについて
    • Linux環境で、rtmtoolsのbuild_allによりプラグインをビルドした場合は、rtmtoolsソース一式をtar等で固めてWindowsで使用することになります
    • ビルドしていないrtmtoolsを使う場合は、EclipseにてIDLコンパイルしますが、特に設定を行う必要はなく、Ant ビルドするだけなのでこちらの方が手軽です

Eclipseの起動からIDLコンパイルまで

(1)Eclipseの起動
  • C:\work\eclipse\eclipse.exe をダブルクリックする
  • "ワークスペースの選択"ダイアログにて、rtmtoolsを指定する。(C:\work\rtmtools)

(2)パッケージのインポート

  1. Projectウィンドウ上で右クリックし、Importを選択
  2. "General" > "Existing Projects into Workspace"
  3. "ルート・ディレクトリーの選択(T)"にてrtmtoolsのフォルダ(C:\work\rtmtools)を指定する。
  4. "プロジェクト(P)"の欄にて、"jp.go.aist.rtcbuilder"関連のチェックを外しし、"完了(F)"をクリックする。

デフォルトで、メニューの[Project]-[Build Automatically]にチェックが入っているためビルドされます。
エラーが出ている場合、次の手順でIDLコンパイルを実行します。

(3)IDLコンパイル実行

  • パッケージ・エクスプローラー上のjp.go.aist.rtm.toolscommon下のbuildlForClient.xmlを右クリック、"Run As" > "1 Ant Build"をクリックする
  • 下図のようにEclipseのコンソールタブに"BUILD SUCCESSFUL"が表示されればビルド成功である
  • パッケージ・エクスプローラー上の全てのパッケージを選択後右クリックし、"Refresh"をクリックするとリビルドが始まる
  • パッケージの前の×印が消え、エラーもなければビルド成功。

RTSE-msm-buildtoolの更新

  • これまでの手順で、RCP版RTSystemEditorのベースは完成で、OpenRTP-aist の更新に伴いLinux環境でビルドしたプラグインの
    「jp.go.aist.rtm.*.jar」ファイルを差し替えてWindowsインストーラに含めるマージモジュールを生成します
  • マージモジュール作成手順については下記参照
    [[openrtm_cxx_installer:RTSystemEditorRCP_msm作成ジョブ]]
  • RTSE.zipを展開した構成は以下となっているので、★印のファイル、ディレクトリを差し替えればよい
  • ただし、plugins下の「jp.go.aist.rtm.*.jar」ファイルは、「jp.go.aist.rtm.systemeditor.RCP_1.2.1.jar」以外は削除する
  • 「jp.go.aist.rtm.systemeditor.RCP_1.2.1.jar」もバージョン番号が更新された場合は差し替える必要がある
    RTSE
    └─utils
        └─RTSystemEditor
            │  rtm.ico
            │  RTSystemEditorRCP.bat
            │  RTSystemEditorRCP.exe ★
            │  start-RTSystemEditorRCP.vbs
            │  start-RTSystemEditorRCP.vbs.wxsctrl
            │
            ├─configuration ★
            ├─p2 ★
            └─plugins ★