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件のコメントがあります。

コメントは受け付けていません。