Sencha Touch 2.1.0 で SDK Tools 使おうとしてハマったメモ(Sencha Touch 2の導入)
Sencha Touch 2 vs jQuery Mobile のスライドをみて「あー、PhoneGap アプリだし jQuery Mobile じゃなくて Sencha Touch のほうがイケてるのかな?」と思い導入しようとしたらさっそくハマったのでメモ。
結論
Sencha Cmd V3 使え
Sencha Touch 概要
ExtJS という JavaScript で記述されているフレームワーク的なものがあり、それを Sencha 社がモバイル用になんか作った感じのもの。で、jQuery Mobile にみたいにろいろできたりなんなりでいいらしい(比較詳細は冒頭のスライドを見ると良い)。基本無料だが商用、GPLv3、組み込み用などいろいろライセンスがある。
導入の流れ
- Sencha Touch 2(SDK) をダウンロード、解凍
- Sencha Cmd V3 という便利コマンドラインツールをダウンロード、任意の PATH にインストール
- SDK(ファイル郡、リポジトリみたいな)に移動して以下のコマンドで土台を作成する
# sencha コマンドの PATH、 generate コマンド、アプリケーションプロジェクトをつくる 、プロジェクト名、プロジェクトのリポジトリ場所指定 /install_path/Sencha/Cmd/3.0.0.250/sencha generate app hoge_project path/to/hoge_project
これで導入ができる。実際に開発するのはまあ明日以降の記事に載るかもしれません。
今回の問題
Sencha 2.1.0(SDK)に対してコマンドラインツール SenchaSDKTools-2.0.0-beta3 をいれても「 [WARN] The current working directory (/Applications/SenchaSDKTools-2.0.0-beta3) is not a recognized Sencha SDK or application folder. Running in backwards compatible mode.」というなんか「SDK の PATH がおかしいよ」ってことで通らなかった。
トラブルシューティング
- 上記のエラーが出たのでひたすらそれでググる
- zsh でインストールしてるから問題なのでは?というところがみつかるので PATH と環境変数を設定する
- Sencha SDKでハマったのでメモ - Ememo
- でもだめだった
- 詰まったので前に Sencha を触ったことのある @shimizukawa さんに助言をもらう。すると、以下の情報が手に入った
- どうググればいいのか迷っててきとうに調べてたが、 @shimizukawa さんが「公式のフォーラムをみればいいんじゃないか?」とのことで探す
- みつかった
- 参考::WARN] The current working directory (/Applications/MAMP/htdocs/sencha-touch-2.1.0...
- 参考::SDK Tools 2.0.0 b3 not working with Sencha Touch 2.1 ?
- 「Sencha Cmd V3 いれろ」とのことらしい
- Sencha Cmd V3 があることを確認
- 参考::Sencha Cmd V3 Beta
- Sencha Touch 2.1.0 のリリースノートをみてみると、たしかに移行したことがかいてある
- 参考::Page Not Found | Sencha
- ということで PATH や環境変数を消して SDKTools をアンインストールした後、 Sencha Cmd V3 をいれて確認
- 無事できましたとさーーーー
なにがこの問題をおこしたかというと、現時点での最新版が 2.1.0 とわかりやすく案内されているのはいいが、事前にいろいろ調べていた時の補助ツール SenchaSDKTools ではなくなって別物になっていたので気づけなかった。さらにちょうど 2.0.1.1 から変わったタイミングなのか同様の情報がなかったので気がつけなかった。いまから振り返ってみればたしかに公式にかいてあるからそれみればいいんだけど、ちょうどタイミングが悪かったというか。