Project

General

Profile

機能 #3095

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

Added by n.kawauchi about 9 years ago. Updated almost 9 years ago.

Status:
終了
Priority:
通常
Assignee:
Target version:
-
Start date:
02/10/2015
Due date:
% Done:

100%

Estimated time:

Description

  • インストーラに同梱している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 の各言語用インストーラが同じマージモジュールを組込む

Associated revisions

Revision 604 (diff)
Added by kawauchi about 9 years ago

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

History

#1 Updated by n.kawauchi about 9 years ago

  • Status changed from 新規 to 解決
  • % Done changed from 0 to 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 Updated by n-ando almost 9 years ago

  • Status changed from 解決 to 終了

Also available in: Atom PDF