在Linux Mint 17.1 x86_64上,Cordova v4.3.0给出了此错误:
$ cordova run android
Running command: /home/naman/test/platforms/android/cordova/run
WARNING : No target specified, deploying to emulator
WARNING : no emulator specified, defaulting to Sample
Waiting for emulator...
Booting up emulator (this may take a while)....BOOT COMPLETE
/home/naman/test/platforms/android/cordova/node_modules/q/q.js:126
throw e;
^
Error: ENOENT, no such file or directory '/opt/software/android-sdk/tools/tools/lib/build.template'
at Object.fs.openSync (fs.js:432:18)
at Object.fs.readFileSync (fs.js:286:15)
at /home/naman/test/platforms/android/cordova/lib/build.js:129:40
at _fulfilled (/home/naman/test/platforms/android/cordova/node_modules/q/q.js:798:54)
at self.promiseDispatch.done (/home/naman/test/platforms/android/cordova/node_modules/q/q.js:827:30)
at Promise.promise.promiseDispatch (/home/naman/test/platforms/android/cordova/node_modules/q/q.js:760:13)
at /home/naman/test/platforms/android/cordova/node_modules/q/q.js:574:44
at flush (/home/naman/test/platforms/android/cordova/node_modules/q/q.js:108:17)
at process._tickCallback (node.js:415:13)
ERROR running one or more of the platforms: Error: /home/naman/test/platforms/android/cordova/run: Command failed with exit code 8
You may not have the required environment or OS to run this project
PATH变量似乎没问题(SDK的路径是正确的):
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/software/android-sdk/tools:/opt/software/android-sdk/platform-tools
我用以下方法安装了它:
sudo apt-add-repository ppa:cordova-ubuntu/ppa
sudo apt-get update
sudo apt-get install cordova-cli
npm install -g cordova
安装顺利进行,项目创建没有任何错误。 我错过了一些依赖吗?
答案 0 :(得分:18)
您可能需要卸载设备上的现有应用。
我在另一台计算机上安装了我的应用程序。当我运行You may not have the required environment or OS to run this project
时,我得到了
adb
。
但是当我尝试通过for
安装我的apk时,它告诉我应用程序已经安装。所以我卸载了它,它有效。
答案 1 :(得分:12)
对于遇到此问题的其他人,假设您已经使用@Naman Dixit的答案检查并修复了任何环境变量,您可能还需要删除并添加您的平台:
cmd: cordova platform rm [platform(s) of interest]
删除[yourproject] / platforms文件夹中的所有内容。然后:
cmd: cordova platform add [platform(s) of interest]
这是我需要让一切运转的最后一步
答案 2 :(得分:8)
确保您定义了适当的环境变量(在.bash_login
或.profile
添加此内容并执行source .profile
):
export ANDROID_SDK="/opt/software/android-sdk"
export ANDROID_NDK="/opt/software/android-ndk"
export ANDROID_HOME="$ANDROID_SDK"
export ANDROID_PLATFORM_TOOLS="$ANDROID_SDK/platform-tools"
export PATH="${PATH}:$ANDROID_HOME/tools:$ANDROID_PLATFORM_TOOLS"
答案 3 :(得分:3)
您的Android sdk似乎没有正确安装,或者您没有安装具有您似乎缺少的依赖项的正确的android sdk版本
/opt/software/android-sdk/tools/tools/lib/build.template
答案 4 :(得分:1)
我现在也遇到了这个问题。我的问题是我正在使用的ant.properties文件指向错误而不是现有文件。
key.store=D:/Fedmich/_keys/android.keystore
纠正后,我能够编译一个发布版apk。 希望这可以帮助将来的某个人。请务必阅读命令提示符中给出的error_logs。
答案 5 :(得分:1)
这只是为了在此处记录此错误的另一个原因以及仍在搜索解决方案的人。
当我遇到这个错误时,我尝试了stackoverflow
上列出的几乎所有解决方案。
我的问题是我的设备未被adb
检测到,adb kill-server/start-server
也没有帮助我,***
但更改
USB
端口有帮助。
答案 6 :(得分:1)
我遇到了同样的错误 我的解决方案是潜在的。
重新启动并再次命令adb设备:结果设备显示。 然后再试一次 3.离子运行adnroid - 设备 “OK”;
答案 7 :(得分:0)
在没有互联网连接的情况下添加平台时会发生。
确保互联网正常并输入:
cordova平台删除blackberry10
cordova平台添加blackberry10
尝试构建并运行:
cordova run
希望这可以解决您的问题,也适用于其他平台
答案 8 :(得分:0)
安装Crosswalk plugin后出现此错误。为了解决这个问题,我安装了最新的Android SDK,在平台下删除了android文件夹并运行
phonegap build android
替代地
cordova platform add --save android
cordova build android
这一切都很好。
答案 9 :(得分:0)
构建android平台时遇到同样的错误,这里没有给出解决方案可以帮助我。 我决定运行cordova显示的gradlew命令,并看到cordova项目中包含的png文件存在问题。 删除后,我再次管理平台。
答案 10 :(得分:0)
export ANDROID_HOME=/Applications/adt-bundle-mac-x86_64-20140321/sdk
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
然后cordova运行android工作
答案 11 :(得分:0)
如果您在Ubuntu上遇到问题,可能需要尝试安装以下软件包per the docs:
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libncurses5:i386 libstdc++6:i386 zlib1g:i386
sudo apt-get install lib32z1