Javaセルフコンパイル環境
思うところあって借りているZaurus(SL-C750)にJavaのセルフコンパイル環境を構築することにしました。
SL-C700のevmを使っているときには大変簡単に行けたはずの内容(jdk1.1.8のclasses.zipを使う)が、どうにもうまくいかずに一苦労。結果としては、以下の方針で環境構築する羽目に。
- J2ME PersonalProfile for Zaurus EarlyAccess(http://java.sun.com/developer/earlyAccess/pp4zaurus/)
- J2ME PersonalProfile for Linux(http://www.sun.com/software/communitysource/j2me/pp/download.xml)
- mabさんのantパッケージとbuild.xml(http://enjoy.pial.jp/~mab/zaurus/sl/open_ipk.htm)
- JavaコンパイラjikesのZaurus 用ビルド(http://killefiz.de/zaurus/showdetail.php?app=2533)
- cvm起動用のシェルスクリプト
特に填ったのがcvm起動用のシェルスクリプト。-classpathってオプション、ディフォルトでは使えないんだもんなぁ。かといって、EarlyAccessに付属している/home/QtPalmtop/bin/evmというシェルスクリプトはバグ持ちだし。
とりあえず、-classpathが出てきたら、 "-Djava.class.path="として指定し直すシェルスクリプトを書いてパスを通す羽目に。
あとは、せっかくなので、以下のソフトも入れて複数ファイルにまたがる編集が可能なように。
- TreeExplorerQt Plus+(http://hpcgi2.nifty.com/taku2001/zau/texplorerqt_p/top.cgi)
以前MI版はレジストしてましたが、Qt版もレジストしてみました。インデントが使えるので結構快適です。
とまぁ、いろいろとやってみましたが、かなり使えます。
なによりも、ant経由で一発コンパイルが大変便利です。思ったよりも速いし。
さぁ、久しぶりにJavaで趣味プログラムでも。……いや、限りなく仕事なんですけど(;_;)。Squeakでは納品できないもんなぁ。
そうそう、納品といえば。
jikesとcvmで作っている限り、Run Anywhereは無理っぽいですね。何せ、charsetの指定がshift_jisで出来ないため、コメント内の日本語で引っかかるし。
仕方ないので、TreeExplorerはUTF-8専用エディタと割り切って、全ソースをUTF-8にして作っています。他のところ(携帯とか)にコードをポーティングするときにはxyzzyなどで文字コードを変更して回らないとならないですね。あー、面倒くさいなぁ。