2

我正在尝试设置一个基本的“hello world”PhoneGap 项目。我一直在执行http://docs.phonegap.com/en/2.7.0/guide_getting-started_android_index.md.html#Getting%20Started%20with%20Android中的步骤。我在 Windows 7 Ultimate 机器上执行此操作。

我已成功设置 Java 和 Ant。我已经通过在命令提示符中键入“javac -version”确认了这一点(显示了 1.6.0_39)。当我在命令提示符下键入“ant”时,我收到一条消息,上面写着“Buildfile:build.xml 不存在!构建失败”。在这一点上,我确信我已经通过第 3 步正确地完成了所有事情。但是,当我进入第 4 步时,我遇到了问题。

在第 4 步中,当我在命令提示符中键入“create C:\Tests\Android Test MyNamespace.Test.Android”时,我收到一条错误消息:“create is not known as an internal or external command, operable program or batch file ."。有什么问题?“创造”从何而来?当我运行命令时,我在 /Cordova/phonegap-2.7.0/phonegap-2.7.0/lib/android 目录中,收到以下错误:

Creating new android project...
Copying template files...
Copying js, jar & config.xml files...
Copying cordova command tools...
Updating AndroidManifest.xml and Main Activity...
C:\Program Files\Cordova\phonegap-2.7.0\phonegap-2.7.0\lib\android\bin\create.js
(31, 5) Microsoft JScript runtime error: Path not found

我可以看到 create.js 文件。但是,由于某种原因,我收到此“找不到路径”错误。我是否输入了错误的命令提示符参数?我一直盯着它,一切看起来都是正确的。

谢谢!

4

6 回答 6

2

同样的问题......奇怪的是,如果我不带参数运行命令“创建”,它会使用示例应用程序创建一个文件夹“示例”,而不会出现错误

我在以下网址找到了答案:https ://groups.google.com/d/msg/phonegap/tnz2DnUE-E0/ADZibhwHGpYJ

问题在于“create.js”中的这一行:

var ACTIVITY_PATH=PROJECT_PATH+'\\src\\'+PACKAGE_AS_PATH+'\\'+ACTIVITY+'.java';
[...]
exec('%comspec% /c copy "'+ROOT+'"\\bin\\templates\\project\\Activity.java '+     ACTIVITY_PATH +' /Y');

Windows 的“复制”命令不会创建不存在的目录,因此上述命令会失败,因为“src\PACKAGE_AS_PATH”不存在。这可以通过以下方式解决:

var ACTIVITY_DIR=PROJECT_PATH + '\\src\\' + PACKAGE_AS_PATH;
var ACTIVITY_PATH=ACTIVITY_DIR+'\\'+ACTIVITY+'.java';
[...]
exec('%comspec% /c mkdir ' + ACTIVITY_DIR);
exec('%comspec% /c copy "' + ROOT + '"\\bin\\templates\\project\\Activity.java ' +  ACTIVITY_PATH + ' /Y');
于 2013-05-17T12:26:52.293 回答
2

检查您的环境路径:

设置环境变量:

Path:
Start -> Control Panel -> System and Security -> System -> Environment variables 

Or

Mycomputer -> Right Click -> properties -> Advance System settings -> Environment variables

1. Java JDK
2. Android SDK
3. ANT

user1 的用户变量:路径:%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Users\user1\AppData\Roaming\npm \

临时:%USERPROFILE%\AppData\Local\Temp

系统变量:

ANDROID_HOME: C:\Nithi\software\Android_sdk\adt-bundle-windows-x86_64-20131030\adt-bundle-windows-x86_64-20131030\sdk\ 路径:

ANT_HOME: C:\ant

JAVA_HOME: C:\Program Files\Java\jdk1.7.0_45\

JAVA_PATH: C:\Program Files (x86)\Java\jre7\bin

路径:c:\Program Files (x86)\Intel\iCLS Client\;c:\Program Files\Intel\iCLS Client\;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT% \System32\WindowsPowerShell\v1.0\;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files (x86)\Windows Live\ Shared;C:\Program Files\nodejs\;%ANT_HOME%\bin;%JAVA_HOME%\bin;%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools

于 2014-02-14T16:36:16.337 回答
1

你的环境变量是为 JAVA 和 ANT 设置的吗?另外,您可以分享您正在使用的创建命令吗?包名中不应有空格。

于 2013-05-13T13:35:03.253 回答
1

你应该在Cordova/phonegap-2.7.0/phonegap-2.7.0/lib/android/bin目录中。然后键入: create {path} {project.with.dots} {YourProjectName}

例如,我刚刚运行: C:\server\cordova\phonegap-2.7.0\phonegap-2.7.0\lib\android\bin> create ../MyTest my.test.com MyTestProject它在C:\server\cordova\phonegap-2.7.0\phonegap-2.7.0\lib\android\.

此外,如果您执行 echo %PATH%,您应该会看到 ant\bin、android-sdk\tools、android-sdk\platform0tools 和 %JAVA_HOME% 的目录。

于 2013-05-13T14:57:39.730 回答
0

看起来项目名称中不能有圆点。

C:\Phonegap\android\bin>创建 c:\android\helloworld3 com.hello.world helloworld

Microsoft (R) Windows Script Host 版本 5.8 版权所有 (C) Microsoft Corporation。版权所有。

C:\Phonegap\android\VERSION 创建新的android项目...复制模板文件...复制js、jar和config.xml文件...复制cordova命令工具...更新AndroidManifest.xml和Main Activity... c:\android\helloworld3\src\com\hello\world\helloworld.java c:\android\helloworld3\src\com\hello\world\helloworld.java c:\android\helloworld3\AndroidManifest.xml c:\android \helloworld3\AndroidManifest.xml c:\android\helloworld3\AndroidManifest.xml

(工作正常)

但...

C:\Phonegap\android\bin>创建 c:\android\helloworld4 com.hello.world hello.world

Microsoft (R) Windows Script Host 版本 5.8 版权所有 (C) Microsoft Corporation。版权所有。

C:\Phonegap\android\VERSION 创建新的android项目...复制模板文件...复制js、jar和config.xml文件...复制cordova命令工具...更新AndroidManifest.xml和Main Activity... c:\android\helloworld4\src\com\hello\world\hello.world.java C:\Phonegap\android\bin\create.js(32, 5) Microsoft JScript 运行时错误:找不到路径(失败)

虽然没有帮助的错误消息。

于 2014-04-07T18:39:07.247 回答
0

我认为您应该将项目目录的路径放在“”中,否则创建脚本会将“Test”解释为包名,这显然不是有效的包名。所以命令应该是:

create "C:\Tests\Android Test" MyNamespace.Test.Android AndroidTest
于 2013-05-14T13:17:03.957 回答