我对phonegap很新,并试图通过输入phonegap 安装网页上描述的命令来创建一个简单的测试应用程序
不幸的是,我在命令行中收到以下错误:
BUILD FAILED
E:\ProgramFiles(x86)\AndroidSDK\tools\ant\build.xml:892: The following error occ
urred while executing this line:
E:\ProgramFiles(x86)\AndroidSDK\tools\ant\build.xml:894: The following error occ
urred while executing this line:
E:\ProgramFiles(x86)\AndroidSDK\tools\ant\build.xml:906: The following error occ
urred while executing this line:
E:\ProgramFiles(x86)\AndroidSDK\tools\ant\build.xml:284: null returned: 1
Total time: 4 seconds
Error code 1 for command: cmd with args: /s,/c,ant,debug,-f,E:\Projects\Mobile\P
honeGap\test-app\platforms\android\build.xml,-Dout.dir=ant-build,-Dgen.absolute.
dir=ant-gen
[error] cmd: Command failed with exit code 2
Run Code Online (Sandbox Code Playgroud)
我使用Windows 7 64位.我的环境变量如下所示:
ANDROID_HOME = E:\ProgramFiles(x86)\AndroidSDK
ANT_HOME = E:\Projects\Mobile\Eclipse\plugins\org.apache.ant_1.8.3.v201301120609
JAVA_HOME = C:\Program Files\Java\jdk1.7.0_51
Run Code Online (Sandbox Code Playgroud)
不过,如果我在命令shell中键入"ant",我会收到以下消息:
E:\项目\手机\ PhoneGap的\测试应用>蚂蚁
Buildfile:build.xml不存在!
构建失败
这可能是原因吗?
谢谢你的帮助!
编辑:
以下是命令行中的完整输出:
E:\Projects\Mobile\PhoneGap\test-app>phonegap run android
[phonegap] detecting Android SDK environment...
[phonegap] using the local environment
[phonegap] compiling Android...
[ReferenceError: a is not defined]
Buildfile: E:\Projects\Mobile\PhoneGap\test-app\platforms\android\build.xml
-set-mode-check:
-set-debug-files:
-check-env:
[checkenv] Android SDK Tools Revision 22.3.0
[checkenv] Installed at E:\ProgramFiles(x86)\AndroidSDK
-setup:
[echo] Project Name: HelloWorld
[gettype] Project Type: Application
-set-debug-mode:
-debug-obfuscation-check:
-pre-build:
-build-setup:
[getbuildtools] Using latest Build Tools: 19.0.0
[echo] Resolving Build Target for HelloWorld...
[gettarget] Project Target: Android 4.4
[gettarget] API level: 19
[echo] ----------
[echo] Creating output directories if needed...
[mkdir] Created dir: E:\Projects\Mobile\PhoneGap\test-app\platforms\android\
ant-build\rsObj
[mkdir] Created dir: E:\Projects\Mobile\PhoneGap\test-app\platforms\android\
ant-build\rsLibs
[echo] ----------
[echo] Resolving Dependencies for HelloWorld...
[dependency] Library dependencies:
[dependency]
[dependency] ------------------
[dependency] Ordered libraries:
[dependency]
[dependency] ------------------
[echo] ----------
[echo] Building Libraries with 'debug'...
nodeps:
-set-mode-check:
-set-debug-files:
-check-env:
[checkenv] Android SDK Tools Revision 22.3.0
[checkenv] Installed at E:\ProgramFiles(x86)\AndroidSDK
-setup:
[echo] Project Name: CordovaLib
[gettype] Project Type: Android Library
-set-debug-mode:
-debug-obfuscation-check:
-pre-build:
-build-setup:
[getbuildtools] Using latest Build Tools: 19.0.0
[echo] Resolving Build Target for CordovaLib...
[gettarget] Project Target: Android 4.4
[gettarget] API level: 19
[echo] ----------
[echo] Creating output directories if needed...
[mkdir] Created dir: E:\Projects\Mobile\PhoneGap\test-app\platforms\android\
CordovaLib\ant-build\rsObj
[mkdir] Created dir: E:\Projects\Mobile\PhoneGap\test-app\platforms\android\
CordovaLib\ant-build\rsLibs
[echo] ----------
[echo] Resolving Dependencies for CordovaLib...
[dependency] Library dependencies:
[dependency] No Libraries
[dependency]
[dependency] ------------------
-code-gen:
[mergemanifest] Found Deleted Target File
[mergemanifest] Merging AndroidManifest files into one.
[mergemanifest] Manifest merger disabled. Using project manifest only.
[echo] Handling aidl files...
[aidl] No AIDL files to compile.
[echo] ----------
[echo] Handling RenderScript files...
[echo] ----------
[echo] Handling Resources...
[aapt] Found new input file
[aapt] Generating resource IDs...
[echo] ----------
[echo] Handling BuildConfig class...
[buildconfig] No need to generate new BuildConfig.
-pre-compile:
-compile:
[echo] Creating library output jar file...
-post-compile:
-obfuscate:
-dex:
[echo] Library project: do not convert bytecode...
-crunch:
[crunch] Crunching PNG Files in source dir: E:\Projects\Mobile\PhoneGap\test-
app\platforms\android\CordovaLib\res
[crunch] To destination dir: E:\Projects\Mobile\PhoneGap\test-app\platforms\a
ndroid\CordovaLib\ant-build\res
[crunch] Crunched 0 PNG files to update cache
-package-resources:
[echo] Library project: do not package resources...
-package:
[echo] Library project: do not package apk...
-post-package:
-do-debug:
[echo] Library project: do not create apk...
[propertyfile] Updating property file: E:\Projects\Mobile\PhoneGap\test-app\plat
forms\android\CordovaLib\ant-build\build.prop
[propertyfile] Updating property file: E:\Projects\Mobile\PhoneGap\test-app\plat
forms\android\CordovaLib\ant-build\build.prop
[propertyfile] Updating property file: E:\Projects\Mobile\PhoneGap\test-app\plat
forms\android\CordovaLib\ant-build\build.prop
[propertyfile] Updating property file: E:\Projects\Mobile\PhoneGap\test-app\plat
forms\android\CordovaLib\ant-build\build.prop
-post-build:
debug:
-code-gen:
[mergemanifest] Found Deleted Target File
[mergemanifest] Merging AndroidManifest files into one.
[mergemanifest] Manifest merger disabled. Using project manifest only.
[echo] Handling aidl files...
[aidl] No AIDL files to compile.
[echo] ----------
[echo] Handling RenderScript files...
[echo] ----------
[echo] Handling Resources...
[aapt] Found Deleted Target File
[aapt] Generating resource IDs...
[echo] ----------
[echo] Handling BuildConfig class...
[buildconfig] Generating BuildConfig class.
-pre-compile:
[echo] Set jars path to: E:\Projects\Mobile\PhoneGap\test-app\platforms\and
roid\CordovaLib\ant-build\classes.jar
-compile:
[javac] Compiling 2 source files to E:\Projects\Mobile\PhoneGap\test-app\pla
tforms\android\ant-build\classes
-post-compile:
-obfuscate:
-dex:
[dex] input: E:\Projects\Mobile\PhoneGap\test-app\platforms\android\ant-bu
ild\classes
[dex] input: E:\Projects\Mobile\PhoneGap\test-app\platforms\android\Cordov
aLib\ant-build\classes.jar
[dex] Pre-Dexing E:\Projects\Mobile\PhoneGap\test-app\platforms\android\Co
rdovaLib\ant-build\classes.jar -> classes-e1aa4bb1e6a0a2f38f9e3036d5cbe6f6.jar
[dx] 'E:\ProgramFiles' is not recognized as an internal or external comma
nd,
[dx] operable program or batch file.
BUILD FAILED
E:\ProgramFiles(x86)\AndroidSDK\tools\ant\build.xml:892: The following error occ
urred while executing this line:
E:\ProgramFiles(x86)\AndroidSDK\tools\ant\build.xml:894: The following error occ
urred while executing this line:
E:\ProgramFiles(x86)\AndroidSDK\tools\ant\build.xml:906: The following error occ
urred while executing this line:
E:\ProgramFiles(x86)\AndroidSDK\tools\ant\build.xml:284: null returned: 1
Total time: 2 seconds
Error code 1 for command: cmd with args: /s,/c,ant,debug,-f,E:\Projects\Mobile\P
honeGap\test-app\platforms\android\build.xml,-Dout.dir=ant-build,-Dgen.absolute.
dir=ant-gen
[error] cmd: Command failed with exit code 2
Run Code Online (Sandbox Code Playgroud)
我通过删除这些文件夹的内容来解决它:
/platforms/android/ant-build
/platforms/android/ant-gen
/platforms/android/bin
/platforms/android/gen
Run Code Online (Sandbox Code Playgroud)
在错误日志中您将看到以下消息
E:\ProgramFiles' is not recognized as an internal or external command, operable program or batch file.
Run Code Online (Sandbox Code Playgroud)
您配置的ANDROID_HOME = E:\ProgramFiles(x86)\AndroidSDK这对我来说似乎很奇怪,因为通常该文件夹是命名的C:\Program Files (x86)(带有空格)。
你的AndroidSDK真的安装在名为E:\ProgramFiles(x86)的文件夹中吗?我真的不认为这是问题,因为 SDK 似乎找到了,但我还是不得不问......
更有可能的是,我认为cordova构建脚本中的某个地方可能有一行不喜欢路径中的圆括号()。
要在不弄乱您的conf的情况下进行检查,您可以在cmd中尝试此操作(关闭cmd后更改将丢失):
subst z: E:\ProgramFiles(x86)\AndroidSDK
set ANDROID_HOME=z:\
phonegap build android
Run Code Online (Sandbox Code Playgroud)
(如果您已经在使用 Z 驱动器,请将 Z 替换为其他驱动器)
| 归档时间: |
|
| 查看次数: |
33513 次 |
| 最近记录: |