プロジェクト

全般

プロフィール

機能 #3095

Windows用インストーラでJREのマージモジュールを組込むように修正する

n.kawauchi約9年前に追加. ほぼ9年前に更新.

ステータス:
終了
優先度:
通常
担当者:
対象バージョン:
-
開始日:
2015/02/10
期日:
進捗率:

100%

予定工数:

説明

  • インストーラに同梱しているRTSytemEditorRCPは、起動するために32bit版JREが必要である。(OpenRTPも同様だが、C++版でのみインストールされる)
  • OpenRTM-aistの各言語64bit版インストーラに含まれるRTSytemEditorRCPも32bit版である。これは配布するJREがOpenJDKのWindows用バイナリで、64bit用は提供されていないことによる。
  • OpenRTM-aistの64bit版利用者がJavaの64bitをインストールしていてもRTSytemEditorRCPを起動できるようにするため、JREのマージモジュールを組込むように修正する。
  • JREのマージモジュール(msm)は、
    • 別環境でインストーラのバージョン(32bit、64bit)に対応した生成済みのものを利用する
    • JREはOpenRTM-aistの基本ベースで必要という位置付けで、OpenRTM-aist\1.1\bin下にインストールされる
    • C++, Python, Java の各言語用インストーラが同じマージモジュールを組込む

関係しているリビジョン

リビジョン 604 (差分)
kawauchi が約9年前に追加

[compat, installer] JRE merge module has been added.

履歴

#1 n.kawauchi約9年前に更新

  • ステータス新規 から 解決 に変更
  • 進捗率0 から 100 に変更

JREのマージモジュールファイルは、現在のところ下記にアップしている
http://openrtm.org/pub/Windows/OpenRTM-aist/tools/msm/
  ・JRE_OpenJDK7_x86_64.msm
  ・JRE_OpenJDK7_x86.msm

このマージモジュールをOpenRTM-aist-Python/installerディレクトリにダウンロードしてからmsiを生成するようにスクリプトで指定する

32bit用msi生成時の指定

set ARCH=x86
call cleanup.cmd
del *.msm
set URL=http://openrtm.org/pub/Windows/OpenRTM-aist/tools/msm/RTSystemEditorRCP_%ARCH%.msm
C:\Cygwin64\bin\wget.exe %URL%
set URL=http://openrtm.org/pub/Windows/OpenRTM-aist/tools/msm/JRE_OpenJDK7_%ARCH%.msm
C:\Cygwin64\bin\wget.exe %URL%
set INCLUDE_JRE=YES     ← NOと指定したらJREを含めないmsiが生成される

call build.cmd

JREを含めるとインストーラサイズは、29MB → 73MB 程度になる

JREを組み込んだインストーラの組合せテスト結果

  • 32bit版インストーラを使った動作確認
    • OpenRTM-aist-C++_1.1.1-RELEASE_x86_vc10.msi
    • OpenRTM-aist-Python_1.1.0-RELEASE_x86.msi
    • OpenRTM-aist-Java_1.1.0-RELEASE_x86.msi
  • 32bit環境なので、JavaとPythonも32bit版をインストールしており、システム環境変数のPathに追加してある
    • jdk-7u71-windows-i586.exe
    • python-2.7.8.msi
テストで確認すべき点
  • アンインストール時のJREの状態
    • 各言語の組合せインストールで、インストールとアンインストールの順序が違っても、最後まで残っていること
  • C++版のみインストーラオプションで「JREあり・なし」を選択できる。この選択と他の言語インストーラとの組合せ動作。
  • テスト1 ・・・結果OK!
    ・次の順序でインストール
    [1] C++ (デフォルト設定:JREあり)
     →OpenRTM-aist\1.1\bin\jre としてインストールされる
    [2] Python
    [3] Java
    
    ・OpenRTP → 起動できる
    ・RTSystemEditorRCP  → 起動できる
    
    ・アンインストール順序とその結果
    [1] C++
     →削除後、JREは残っていて、OK動作
    [2] Python
     →削除後、JREは残っていて、OK動作
    [3] Java
     ⇒削除後、ProgramFiles下は綺麗に消えているが、スタートメニューのショートカットは残ってしまった。
      スタートメニューの「OpenRTM-aist 1.1」をクリックすると「(空)」と表示される。
       「OpenRTM-aist 1.1」を右クリックして削除を選択すれば消える。タイミングにより、たま~に起こる現象なので、スルーする。
    
  • テスト2 ・・・結果OK!
    ・次の順序でインストール
    [1] C++ (オプションでJREなし「No」を選択)
     →JREはインストールされない
      ただし、JDK 32bitをインストールしてあるので、OpenRTPは起動する
    [2] Python
     →OpenRTM-aist\1.1\bin\jre としてインストールされる
    [3] Java
    
    ・アンインストール順序とその結果
    [1] Java
     →削除後、JREは残っていて、OK動作
    [2] Python
     →削除後、JREも削除されて、OK動作
      C++でJREなしを選択したから、C++が残っていてもJREは残らない
    [3] C++
     ⇒削除後、スタートメニューとProgramFiles下が綺麗に消えており、OK!
    

#2 n-andoほぼ9年前に更新

  • ステータス解決 から 終了 に変更

他の形式にエクスポート: Atom PDF