2015-05-21 109 views
14

我得到这个错误,而我试图创建一个科尔多瓦的PhoneGap应用程序,并在最后一步,而我使用的生成命令VM错误而构建科尔多瓦的PhoneGap

cordova build android 

我得到这个错误:

enter image description here

错误

  
D:\rmapp>cordova run android 
Running command: D:\rmapp\platforms\android\cordova\run.bat 
ANDROID_HOME=D:\Android\sdk 
JAVA_HOME=C:\Program Files (x86)\Java\jdk1.7.0_71 
WARNING : No target specified, deploying to device '192.168.56.100:5555'. 
Running: D:\rmapp\platforms\android\gradlew cdvBuildDebug -b D:\rmapp\platform 
s\android\build.gradle -PcdvBuildArch=x86 -Dorg.gradle.daemon=true 

FAILURE: Build failed with an exception. 

* What went wrong: 
Unable to start the daemon process. 
This problem might be caused by incorrect configuration of the daemon. 
For example, an unrecognized jvm option is used. 
Please refer to the user guide chapter on the daemon at http://gradle.org/docs/2 
.2.1/userguide/gradle_daemon.html 
Please read the following process output to find out more: 
----------------------- 
Error occurred during initialization of VM 
Could not reserve enough space for object heap 
Error: Could not create the Java Virtual Machine. 
Error: A fatal exception has occurred. Program will exit. 


* Try: 
Run with --stacktrace option to get the stack trace. Run with --info or --debug 
option to get more log output. 

D:\rmapp\platforms\android\cordova\node_modules\q\q.js:126 
        throw e; 
         ^
Error code 1 for command: cmd with args: /s /c "D:\rmapp\platforms\android\grad 
lew cdvBuildDebug -b D:\rmapp\platforms\android\build.gradle -PcdvBuildArch=x86 
-Dorg.gradle.daemon=true" 
ERROR running one or more of the platforms: Error: D:\rmapp\platforms\android\c 
ordova\run.bat: Command failed with exit code 1 
You may not have the required environment or OS to run this project 

+1

请粘贴您的错误代码,而不是代码截图。将来,那些查找错误代码的人可以找到相关的线程。 –

+0

与[generator-m](https://github.com/mwaylabs/generator-m)项目 – IsmailS

+0

面临同样的错误第三次以某种方式工作。可能是我没有连接到互联网。第三次从https://repo1.maven.org/maven2/com/android/tools/下载了大量文件,然后在设备上成功安装了应用程序。 – IsmailS

回答

1

当我在科尔多瓦工作时,我遇到了同样的问题。

正如在post中所提到的,它看起来像堆没有被分配,所以JVM没有被初始化。

尝试释放您的系统缓存,然后尝试构建项目。

3

我也有同样的问题。尝试使用管理权限运行命令行。

1

这个错误发生在我不时。我通过在ANDROID_HOME文件夹中运行程序“SDK Manager”来修复此问题。

15

您的系统无法为jvm提供足够的连续内存空间并导致问题。

这里对我来说是什么工作:

添加一个环境变量GRADLE_OPTS-Dorg.gradle.jvmargs=-Xmx512m

值可以使用-Xmx1g,如果您有更多的可用内存空间。

+0

这对我有效。 –

+1

令人敬畏的兄弟,从你得到这个解决方案。它拯救了我的一天 – kapil

+0

我该怎么办? –

2

只是在windows 8.1和Windows 7在这里解决了这个问题是我做过什么:

  1. 卸载一切,是在控制面板中的程序和功能相关的java
  2. 检查下面的目录,并删除java文件夹: a。 c:\ users \\ AppData \ Local \ Oracle b。 c:\ users \\ AppData \ LocalLow \ Oracle c。 c:\ Program Files \ Java d。 C:\ Program Files(x86)\ Java e。 C:\ ProgramData \ ORACLE **重要:只有从here
  3. 删除此文件夹后成功卸载在控制面板>程序所有的Java项目和功能
  4. 下载并安装最新的Java SDK所有你做去后CMD(以管理员身份运行),并尝试建立再

的结论是:从我个人理解,我没有java的正确配置/安装在我的机器。所以干净的安装一​​切都解决了我的问题。

6

Close Visual Studio - 至少这是我的问题。

和/或任何其他内存密集型程序。

+1

本来是我最后的猜测。为我解决了! – Coss

1

我得到这个错误,因为我没有安装32位JDK。安装,重新启动,并修复它。

0

我的解决方案是只安装新的Java SDK。我也必须更改我的JAVA_HOME路径,指向新的SDK

2

即使我使用了2个演出(-Dorg.gradle.jvmargs = -Xmx2048m),但我开始工作,但当我将JAVA_HOME更改为一个64位的JDK目录。使用更高版本的Java可能也有帮助(1.8+)。

0

当我安装JDK 1.8.0.121的最新版本时,我遇到了与cordova项目相同的问题。

为了解决这个问题,我卸载了所有的JDK版本(1.6,1.7,1.8 ..),并安装了最新版本。

1

在环境变量中,添加具有值-Xmx512M的系统变量_JAVA_OPTIONS

0

安装Java JDK的64位版本,并点JAVA_HOME到安装字典。

1

使用管理权限在CLI中运行以下命令。

>export _JAVA_OPTIONS="-Xmx256M" 

这发生在我身上的机器上有很多的RAM,但具有更低的内存ulimits。 Java决定分配一个大堆,因为它在机器中检测到内存,但由于ulimits不允许分配它。

-1

你需要设置两个环境变量来分配内存:

  • _JAVA_OPTIONS与价值-Xmx2048M,建立Java的多少内存
  • GRADLE_OPTS与价值-Dorg.gradle.jvmargs=-Xmx2048m,建立摇篮多少内存(这可以通过[PROJECT PATH]\platforms\android\cordova\lib\builders\GradleBuilder.js路径按项目基准来指定,尽管默认情况下其设置为2GB atm)

如果cordova co使用Failed to run "javac -version"的草稿更改内存为_JAVA_OPTIONS以降低某些内容。

Java是一个令人愉快的一块堆肥

0

的我JAVA_HOME被默认为x86版本。在System env变量中添加一个新的JAVA_HOME变量,并将其指向x64版本。这是我结束了路径:

C:\ Program Files文件\的Java \ jdk1.8.0_162

相关问题