djh*_*s16 13 linux android node.js cordova
我在我的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)
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助
Moh*_*lah 36
你必须
$cordova platform remove android
$cordova platform add android
Run Code Online (Sandbox Code Playgroud)
因为缺少目录
平台/安卓/科尔多瓦/ node_modules/shelljs
或者您可以创建另一个应用程序并复制丢失的文件并将其添加到您的应用程序中
最近解决了
在终端然后去你的应用程序
cd platforms/android/cordova
sudo npm install shelljs
Run Code Online (Sandbox Code Playgroud)
它对我很好
我已经安装了shelljs:
sudo npm install shelljs -g
Run Code Online (Sandbox Code Playgroud)
但我需要设置NODE_PATH
export NODE_PATH=/usr/local/lib/node_modules
Run Code Online (Sandbox Code Playgroud)
不确定为什么它会丢失......
我的 PhoneGap Android 应用程序在 OS X 10.9 上收到完全相同的错误消息。问题是我JAVA_HOME错误地设置了变量。一旦正确,我需要删除并添加cordova 中的android 平台。这可能是你的问题,所以这就是我解决它的方法:
在我的 .zshrc 文件中添加了以下行export JAVA_HOME=$(/usr/libexec/java_home)
最后我不得不删除平台并再次添加它,以便cordova能够正确使用java。
$cordova platform remove android
$cordova platform add android
注意:在排除故障时,我安装了JDK,这可能是必需的。
| 归档时间: |
|
| 查看次数: |
15330 次 |
| 最近记录: |