astah* Plug-inのastah-launch/astah-debugのこと

2012/1/3追記:astah 6.5.1でメッセージダイアログが表示されない問題は解決されました

 先日の日記で、astah-launch/astah-debugでastahを起動したとき、

JOptionPane.showMessageDialog(window.getParent(),"Hello");

でメッセージ・ダイアログが表示されない、と書きました。そして、astahがJRE6同梱版だからとかシステムのJRE7をつかってるからとかぐちゃぐちゃ書きました。しかし、どうやら、astah-launch/astah-debugで起動したastahはそれらに関係なく、JAVA_HOME内のJREを利用しているようです。

 検証として、自分の端末にJava1.6.0_29と1.7.0_1をインストールしました。システムが採用するJRE(java -versionの結果)は C:\Program Files\Java\jre7 の1.7.0_1です。このとき、astah-launchで起動するとメッセージ・ダイアログは表示されません。
 そこで、JRE7だけを削除しました。システムが採用するJREは C:\Program Files\Java\jre6 の1.6.0_29です。しかし、このときもastah-launch起動でメッセージ・ダイアログは表示されません。
 次に、JDK7も削除しました。環境変数JAVA_HOMEは C:\Program Files\Java\jdk1.7.0_01 にしていました。このとき、astah-launchを実行すると、JAVA_HOMEが有効ではないというエラーがでました。
 そのため、JDK7, JRE7を再インストールして、システムが採用するJRE(java -versionの結果)が C:\Program Files\Java\jre7 の1.7.0_1の状態にして、環境変数JAVA_HOMEを C:\Program Files\Java\jdk1.6.0_29 に変更して、astah-launchを起動したところ、メッセージ・ダイアログが表示されるようになりました。

 JREの複数バージョンの切り替え(http://java.sun.com/j2se/1.5.0/ja/docs/ja/guide/plugin/developer_guide/version.html)とかJavaコントロール・パネルとか見てましたが、あんまり難しく考える必要ありませんでした。