13

Linux (ubuntu 12.04) マシンで phonegap Android アプリをビルドしているときにエラーが発生します。nodejs をインストールし、JAVA_HOME、ANT_HOME、ANDROID_HOME 変数、および $JAVA_HOME/bin、$ANT_HOME/bin、$ANDROID_HOME/tools、$ANDROID_HOME/platform-tools をパスに設定しました。コマンドを実行するとphonegap local build android、次のエラーが発生します。

ME@My-PC:/dos/PhoneGap/HelloWorld$ phonegap local run android 
[phonegap] compiling Android...
    [error] An error occurred while building the android project. 
module.js:340
    throw err;
          ^
Error: Cannot find module 'shelljs'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (/dos/PhoneGap/HelloWorld/platforms/android/cordova/lib/build.js:22:15)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)

助けてくれてありがとう

4

6 に答える 6

7

私はすでにshelljsをインストールしました:

sudo npm install shelljs -g

しかし、 NODE_PATH を設定する必要がありました

export NODE_PATH=/usr/local/lib/node_modules

無くなった理由が不明…

于 2014-12-08T16:25:39.677 に答える
2

cordova-androidエンジン (3.5.1 から) を 3.6.0に更新する必要がありました (スプラッシュスクリーン プラグインで必要なため、こちら) 。

Android プロジェクトをビルドする (そして上記のエラーを排除する) ために、package.json(Cordova プロジェクトのルート フォルダーの) ファイルに次のnpm依存関係を追加しました。

"dependencies": {
    "q": "^1.2.0",
    "shelljs": "^0.4.0",
    "which": "^1.0.9"
  }
于 2015-03-23T18:37:28.410 に答える