最近、仕事でFlex2を触り始めました。結構楽しいです。
Flashアプリケーションが無料で、しかもタイムラインとか意味不明なことを考えずに作れるのがとっても魅力です。
で、Fedora Core 6にインストールしたのでその手順のメモ。
まずはJavaの環境が必要なので整えます。
せっかくなのでJDK 6をインストール。(日本語フォントの設定などは今回関係ないので省きます。)
SUN からパッケージを持ってきてインストール。
$ sudo ./jdk-6-linux-i586-rpm.bin
Javaの環境設定。
.bash_profile
export JAVA_HOME=/usr/java/jdk1.6.0
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
既存のインストール済みVMの確認。
$ rpm -qi java-1.4.2-gcj-compat
java-1.4.2-gcj-compatパッケージが入ってる場合はalternatives機能を使ってVMをスイッチ。
$ sudo /usr/sbin/alternatives --install /usr/bin/java java /usr/java/jdk1.6.0/bin/java 2
$ sudo /usr/sbin/alternatives --config java
2 プログラムがあり 'java' を提供します。
選択 コマンド
-----------------------------------------------
*+ 1 /usr/lib/jvm/jre-1.4.2-gcj/bin/java
2 /usr/java/jdk1.6.0/bin/java
Enter を押して現在の選択 [+] を保持するか、選択番号を入力します:2
VMの確認。
$ java -version
java version "1.6.0"
Java(TM) SE Runtime Environment (build 1.6.0-b105)
Java HotSpot(TM) Client VM (build 1.6.0-b105, mixed mode, sharing)
続いてFlex SDKのインストール。
Adobe からFlex SDKとFlex Language Packを適当なところにダウンロード(Adobe IDの登録が必要です)して適当なところに解凍。
$ mkdir -p ~/sdk/flex2
$ cd ~/sdk/flex2
$ unzip ~/tmp/flex_sdk_2.zip
$ unzip ~/tmp/flex_sdk_2_ja.zip
PATHにflex2/binを通しておく。
.bash_profile
export PATH=$PATH:$HOME/sdk/flex2/bin
ようやくアプリケーションの開発。とりあえずmxmlで書いてみました。
/home/hide/public_html/flex/hello.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml"
width="300" height="150"
>
<mx:Script>
<![CDATA[
import mx.controls.Alert;
private function initApp():void {
}
private function sayHello():void {
Alert.show("Hello World");
}
]]>
</mx:Script>
<mx:Button width="80" label="Say" click="sayHello()" />
</mx:Application>
コンパイル。
$ mxmlc hello.mxml
設定ファイル "/home/hide/sdk/flex2/frameworks/flex-config.xml" をロードしています
/home/hide/public_html/flex/hello.swf (138266 bytes)
hello.swfが出来てるのでブラウザから確認。
おぉ。初めてのFlash。
でもコンパイルが非常に遅い。ちょっと変更したくらいでいちいち時間かけてらんないのでsecondlife さんのこの記事 を見てfcshをインストール。
rlwrapでラップするとreadlineが効いてお得なので、ついでにインストール。
$ sudo yum install rlwrap
fschを
ここから ダウンロードしてインストール。
$ cd ~/sdk/flex2
$ unzip ~/tmp/flex_compiler_shell_012307.zip
fcshでコンパイル
$ rlwrap fcsh
Adobe Flex Compiler SHell (fcsh)
Version 2.0.1 build 155542
Copyright (c) 2004-2006 Adobe Systems, Inc. All rights reserved.
(fcsh) mxmlc -benchmark hello.mxml
fcsh: Assigned 1 as the compile target id
設定ファイル "/home/hide/sdk/flex2/frameworks/flex-config.xml" をロードしています
最初の設定 : 479ms
8 個の SWC がロードされました : 887ms
ファイル :286 時間 : 3713ms
リンクしています... 79ms
最適化しています... 354ms
SWF エンコーディング中... 65ms
/home/hide/public_html/flex/hello.swf (138266 bytes)
合計時間 :5586ms
ピークメモリ使用量 :50 MB (ヒープ :27, ヒープ以外 :23)
以降は返されたtarget idを使用してコンパイル。
(fcsh) compile 1
設定ファイル "/home/hide/sdk/flex2/frameworks/flex-config.xml" をロードしています
最初の設定 : 7ms
8 個の SWC がロードされました : 36ms
Nothing has changed since the last compile. Skip...
合計時間 :57ms
ピークメモリ使用量 :51 MB (ヒープ :28, ヒープ以外 :23)
リンクしています... 22ms
最適化しています... 116ms
SWF エンコーディング中... 41ms
/home/hide/public_html/flex/hello.swf (138266 bytes)
合計時間 :183ms
ピークメモリ使用量 :53 MB (ヒープ :30, ヒープ以外 :23)
(fcsh)
んむ。速い。
vimから使えるようになるとさらに便利になりそうけど、この辺はいずれってことで。
AJAXも楽しくていいのですが、クロスブラウザなんかいちいち考えるのが非常に面倒だったりすするのでFlashもいいかなぁなんて最近思ったりします。
参考:
WEB+DB PRESS Vol.37にFlex2の特集があります。
WEB+DB PRESS 編集部 技術評論社 (2007/02/23) 売り上げランキング: 293