Eclipse から GWT を起動する for Mac

GWT が Mac OS X にネイティブ対応 したので、早速導入。
基本的には projectCreator で Eclipse のプロジェクトを作って、 Terminal から applicationCreator でデバックしながら開発という感じになるんでしょうけど、これだと Eclipse の デバックモードが使えず、ちょっと不便。
ということで、 Eclipse から起動させる方法を模索。
最初は、googlipse というプラグインを使ってみたのだけど、–XstartOnFirstThread の引数がないと怒られる。
あいにく、googlipse は、 任意の引数を与えることができないらしい。
試行錯誤のあげく、起動構成から直接 GWTShell をたたくことで成功。
具体的には、
1. 実行→構成および実行を選択。
2. メインタブで任意のプロジェクト(GWTTest)を選択、メインクラスは com.google.gwt.dev.GWTShell を指定
3. 引数のタブで、 プログラムの引数に下記を追加

 -port 8888 -out "www"   jp.example.GWTTest/GWTTest.html

4. VM引数に下記を追加

-XstartOnFirstThread

5. クラスパスのタブで、拡張をクリック、プロジェクトのディレクトリである src と bin をクラスパスに追加
これで実行をクリックすると、 Eclipse から GWT の hosted mode が立ち上がります!
さあ、ばりばりやるぞー

広告

Google Web Toolkit (GWT) を Mac OS X で開発する

記事は少し前に見つけていたのですが、なかなか時間が無く、やっと試すことができたのでまとめてみます。
Java で Ajax の開発ができる!という Google Web Toolkit (GWT)が大変注目を集めています。
が、開発環境としてサポートしているのが、Linux (GTK+ 2.2.1+) と、 Windows XP/2000 のみということなので、 Mac OS X ユーザーは非常につらいところ。
この開発環境を何とか Mac OS X で動かすことができないかと, いろいろ調べてみたところ, Google Code に Issue #7480804 – Mac OS X support for Google Web Toolkit というのを発見.
そこに, Using GWT on Mac OS X: How To Guide という Google Group の記事があったので試してみました.

  • まず, http://www.eclipse.org/swt/ から, Mac OS X の SWT をダウンロードし, ‾/Library/Java/swt 等へ展開.
  • Linux 版の GWT をダウンロードし展開.
  • GWT を展開したディレクトリへ移動し, 下記のコマンドを実行. GWT プロジェクトを作成.
    % ./projectCreator -eclipse GWTTest -out ‾/Documents/workspace/GWTTest
    

    こうすることにより, Eclipse のプロジェクトが作成されます. プロジェクト名と, workspace のパスは, 環境に応じて書き変えてください.

  • 次に, 下記コマンドで必要なファイルを生成.
    % ./applicationCreator -eclipse GWTTest -out ‾/Documents/workspace/GWTTest jp.example.gwttest.client.GWTExample
    

    GWT アプリケーションは, 必ず client パッケージを指定する必要があるようです.

  • 生成したプロジェクトのディレクトリへ移動すると, GWTExample-shell や GWTExample-compile といった shell スクリプトが生成されていると思うので, GWTExample-shell を下記のように編集.
    #!/bin/bash
    APPDIR=`dirname $0`;
    java ¥
    -XstartOnFirstThread ¥
    -cp "$APPDIR/src:$APPDIR/bin:/foo/bar/gwt-linux-1.1.10/gwt-user.jar:/foo/bar/swt/swt.jar:/foo/bar/gwt-linux-1.1.10/gwt-dev-linux.jar" ¥
    -Djava.library.path=/foo/bar/swt ¥
    com.google.gwt.dev.GWTShell -out "$APPDIR/www" "$@" jp.example.gwttest.GWTExample/GWTExample.html;
    

    具体的には, 次のオプションを追加.
    -Djava.library.path には, SWT を展開したパスを指定して下さい.

    -XstartOnFirstThread
    -Djava.library.path=/foo/bar/swt
    

    クラスパスの gwt-dev-linux.jar の前に, swt.jar のクラスパスを追加しました.

      編集した GWTExample-shell を Terminal 等から実行すると, GWT アプリケーションがホステッドモードで立ちあがります.

%E3%83%92%E3%82%9A%E3%82%AF%E3%83%81%E3%83%A3%201.png
しかし, GWTExample-compile でWebモードへコンパイルしないと, GWTアプリケーションが動作しないようです..(苦笑)
Compile/Browse ボタンも動作しないようです..
つまり, JavaScript へコンパイルしないと動作しない模様..
ホステッドモードで debug 可能なのが GWT の良さでもあるので, 魅力半減..
でも, いちいちブラウザを立ちあげて確認するよりも, 少しは手間が省けるので, Mac OS X が正式にサポートされるまでの繋ぎとして使うのにはこれで我慢ですね..

ひそかに・・・

最近、メモリ1.5GB搭載のこの Mac でも、メモリ不足に悩まされるようになってきたので、
(そもそも仕事させすぎなのだが…汗)
あまり過酷な労働をしない隣の Mac から、メモリを拝借し(爆)
2.5GB にしてやりました。
とりあえず快適になった・・・(笑)

trac

2ヶ月ほど前から、プロジェクト管理を GForge から trac に乗り換えました。
Wiki ベースのプロジェクト管理ツールで、Subversion との連携は抜群。バグトラッカであるチケットシステムもシンプルでなじみやすいです。
乗り換えた最大の理由は、 trac が Python で書かれていること。
GForge は PHP4 で書かれており、GForge を使うためだけに サーバーに mod_php4 を入れていました。
apache2.0.x を使っているので、mod_php4 の使用は推奨されてないんですよね。。
また、最近は PHP で開発することもほとんど無くなり。。。必要性がかなり薄れておりました。
とりあえず、すっきり PHP とオサラバしたかったのです(笑)
最近は、 trac で開発を行っているプロジェクトもよく見られるようになってきました。国内では Meadow とか、 Namazu など。
WWDC 2006で存在明らかにされたMac OS Xの次バージョン「Leopard」に搭載予定のカレンダーサーバーである、 Darwin Calendar Server も trac で開発が行われるようです。
日本語の情報が、まだまだ少ないようなので、時間があったら少しずつでも、ノウハウまとめていきたいと思っておりますが。。。
できるのか?(汗)

Emacs 新アイコン

このところ,超ハードワークが続き,なかなか更新できません・・・(汗)
ばたばたしながらも,なんとか OS X 版 Emacs 新アイコンができあがり, Carbon Emacs Package 3月版に同梱されました.
emacs_iconRC2.jpg
これもひとえに,銭谷さん,sakito さんをはじめとする Macemacsjp 開発者の方々,users メーリングリストメンバーの方々, ご助言くださったり, この忙しいのに,仕事をさぼってアイコンを作っているのを黙ってみていてくれた,職場スタッフのみなさん, その他,ほんの少しでも携わってくださった多くの方々, みなさんのお力があってこそのことです.
この場を借りて,お礼申し上げます.
今後ですが, ライセンス等のドキュメントを整備し, SF.jp にて元ファイル等を公開し, 山本さんのお力を借りて,GNU Emacs 本家 へ提供する予定です.
また, 時間が出来たら Web Badge とかも作ってみたいと思います.

Emacs 新アイコン(案)

銭谷さんのサイト にて、 Emacs 新アイコンのOS X版 の作成が To Do にあったので、逃避で作ってみました(汗)
銭谷さんとメールでやりとりして、ある程度のものができあがってきたのでアップします。
emacs_icon3.jpg
とりあえず、ベースはアクアチックなものと、公式Emacs アイコン風な薄紫色のものにしてみました。
そのベースにオプションで、

  • .Mac風のもの
  • ペンを付け加えたもの
  • 羽ペンを付け加えたもの

を作ってみました。
(ペンとか羽ペンがそれらしく見えないぞ!というつっこみは、とりあえず置いといてください... まだラフ状態なので...汗)
もっとこういう感じにしたらどう?とか、ご提案大歓迎です。
できれば、 Carbon Emacs パッケージ 3月版のリリースに間に合わせたいです。
本業が爆発しそうなくらいな勢いで大変ですが、がんばります(汗)
ご提案、ご意見、ご感想等ありましたら、Macemacsjp-users メーリングリスト までお願いいたします。
みなさんのご意見ご感想お待ちしております!

勝手にスリープ

現実逃避中(自爆)
こんなことしている場合でもないのですが、なかなか記事書けないので書いておきます(汗)
ちょっと前のことですが、PowerMac G4 1.25GHz Dual が勝手にスリープしてしまうという現象に見舞われたので、まとめておきます。

初期症状

朝、電源を入れ、30分ほどすると、突然スリープを繰り返すという現象に遭遇。マウス等を動かすと復帰するが、またすぐスリープ・・・。
しかし、その現象に見舞われるのは、30分ほど。しばらくすると正常に動作するようになる。
このマシンを置いていたのが、ワゴンショップで、集中して電源をとっているため、最初は電圧が低いのかなと思い、放っておいた。

進行

日がたつにつれ、スリープに見舞われる時間が長くなってきた。
いろいろ調査開始。設置場所がショッピングセンターのワゴンショップのため、電源の位置が変えられず、いちばん怪しいと思われる電源のテストができず。
メモリが1本抜けかかっていたりしたので直す。
アップルのサポートに問い合わせてみたところ、ハードではなく、システムの不具合ではないかとのこと。

  • 別のHDDから起動してみる。
  • OS X の CD から起動してみる。
  • PRAMのリセットをしてみる。
  • PMUのリセットをしてみる。

以上のことを試してみてくださいとのこと。
別のHDDから起動してもダメ。
CDから起動すると、スリープどころか電源が落ちてしまう。
PRAMのリセットしてもだめ。
PMUを押してみたけど、効果なし。
スリープもだんだんひどくなり、2時間以上経ってもスリープしまくり。
もうお手上げ状態でした。。。

system.log

ワゴンショップも出店期間を終え、G4も会社に戻ってきたので、早速電源のテスト。
しかし、直接刺しても直らない。
ワゴンショップでは、3時間ほどすると正常稼働するようになっていたので、しばらく回してみることに。
しかし、丸一日起動させておいても、スリープ直らず。(苦笑)
負荷をかけた状態ではどうかな〜と、別のマシンから Terminal で ssh でログインし、 make -j8 とかやって負荷をかけながら、top や /var/log/system.log を眺めていたときのこと。
system.log にスリープする時のログが出ているではありませんか。

kernel: Power Management received emergency overtemp signal. Going to sleep.

なにやら、温度警告でスリープしている模様。
TemperatureMonitorで、CPU温度をチェックしてみた。
PowerMac G4 (Mirror Drive Door)は、CPU温度ではなく、CPU Board の温度しか表示されないが、Soecified Upper Limit が 62℃のところ、80℃まで上昇してスリープしてしまう模様。
こうなったら一番考えられるのは、ファンの故障。
チェックしてみると、G4のデカイCPUファンは、頼りなくフラフラと回っておりました。
部品取り用のG4のファンと交換してやると、見事に復活。
CPU Boardの温度も60℃前後で超安定。
一件落着でした^^;