Couldn’t find moduleへの対処
Titanium Mobile SDK 1.7.2での話。
モジュールを追加してアプリを実行すると「Couldn’t find module」とか言われて動かないという事件があった。
ログを見るとなんだかjsファイルを読もうとしていらっしゃる。
[DEBUG] loading: /Users/akahige/works/titanium/HogeApp/Resources/jp.brassworks.nai.js, resource: Users/akahige/works/titanium/HogeApp/Resources/jp_brassworks_nai_js [ERROR] Script Error = Couldn't find module: jp.brassworks.nai.
設置したはずのモジュールが見つけられないのかと思いきや。
[DEBUG] Detecting modules in /Users/akahige/works/titanium/HogeApp/modules [DEBUG] Detected module for iphone: jp.brassworks.nai 0.1 @ /Users/akahige/works/titanium/HogeApp/modules/iphone/jp.brassworks.nai/0.1 [DEBUG] Detecting modules in /Users/akahige/Library/Application Support/Titanium/modules [DEBUG] Looking for Titanium Module id: jp.brassworks.nai, version: 0.1, platform: iphone [INFO] Detected third-party module: jp.brassworks.nai/0.1
Detectしていらっしゃる。
ちょ待てい。どういうこった。
解決策
おもむろにTitanium Stadioのメニューから
Project > Clean...
これでビルドし直せばオッケー。
久々にTitaniumの謎挙動の洗礼をうけてしまいました。
なんだか昨今はモジュール追加したら必ずCleanしないとダメなようです。相変わらずの伝家の宝刀です。
それからモジュールを設置するパスが変わっていた
いつのまにか
/Library/Application Support/Titanium
から
$HOME/Library/Application Support/Titanium
へと変わっている。
Lionにしたせいなのか、Titanium Studioがそうしたのかよくわからない。
本家のQAを見るに、これに気がつかないで「Couldn’t find module」とご対面するケースもあるようだ。
あとモジュールはプロジェクトディレクトリの直下に置いても動く。
ログ見て初めて知って、試したら動いた。
“Couldn’t find moduleへの対処” に対して1件のコメントがあります。
コメントは受け付けていません。