【问题标题】:VM error while Build Cordova PhoneGap构建 Cordova PhoneGap 时出现 VM 错误
【发布时间】:2015-08-03 17:58:40
【问题描述】:

我在尝试创建 Cordova PhoneGap 应用程序时遇到此错误,并在最后一步使用构建命令时遇到此错误

cordova build android

我收到了这个错误:

错误

D:\rmapp>cordova 运行 android 运行命令:D:\rmapp\platforms\android\cordova\run.bat ANDROID_HOME=D:\Android\sdk JAVA_HOME=C:\Program Files (x86)\Java\jdk1.7.0_71 警告:未指定目标,部署到设备“192.168.56.100:5555”。 运行:D:\rmapp\platforms\android\gradlew cdvBuildDebug -b D:\rmapp\platform s\android\build.gradle -PcdvBuildArch=x86 -Dorg.gradle.daemon=true FAILURE:构建失败并出现异常。 * 什么地方出了错: 无法启动守护进程。 此问题可能是由于守护程序配置不正确造成的。 例如,使用了无法识别的 jvm 选项。 请参阅 http://gradle.org/docs/2 上有关守护进程的用户指南章节 .2.1/userguide/gradle_daemon.html 请阅读以下流程输出以了解更多信息: ---------------------- 初始化虚拟机时出错 无法为对象堆保留足够的空间 错误:无法创建 Java 虚拟机。 错误:发生了致命异常。程序将会退出。 * 尝试: 使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 运行 获得更多日志输出的选项。 D:\rmapp\platforms\android\cordova\node_modules\q\q.js:126 扔 e; ^ 命令的错误代码 1:带有 args 的 cmd:/s /c "D:\rmapp\platforms\android\grad lew cdvBuildDebug -b D:\rmapp\platforms\android\build.gradle -PcdvBuildArch=x86 -Dorg.gradle.daemon=true" 运行一个或多个平台时出现错误:错误:D:\rmapp\platforms\android\c ordova\run.bat:命令失败,退出代码为 1 您可能没有运行此项目所需的环境或操作系统

【问题讨论】:

  • 请粘贴您的错误代码,而不是代码截图。这样以后查找错误代码的人可以找到相关的线程。
  • generator-m 项目面临同样的错误
  • 第三次以某种方式工作。可能是我没有连接到互联网。第三次它从repo1.maven.org/maven2/com/android/tools 下载了大量文件,然后成功在设备上安装了应用程序。
  • 或者可能是设备屏幕未激活。不知道会不会影响

标签: android eclipse cordova phonegap-build


【解决方案1】:

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

这对我有用:

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

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

【讨论】:

  • 我该怎么做?
  • 1) 打开系统属性 2) 转到高级系统设置 3) 单击环境变量按钮,4) 添加具有上述设置的新系统变量。最好的问候,Sarim Ghani i-splendid.com
【解决方案2】:

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

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

【讨论】:

  • 在我的例子中是 xCode
【解决方案3】:

我的JAVA_HOME 默认为 x86 版本。在 System env 变量中添加一个新的 JAVA_HOME 变量并将其指向 x64 版本对我有用。这是我最终的路径:

C:\Program Files\Java\jdk1.8.0_162

【讨论】:

    【解决方案4】:

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

    【讨论】:

      【解决方案5】:

      刚刚在 windows 8.1 和 windows 7 中解决了这个问题。这是我所做的:

      1. 在控制面板的程序和功能中卸载所有与 java 相关的内容
      2. 检查以下目录并删除 java 文件夹: 一种。 c:\users\\AppData\Local\Oracle 湾。 c:\users\\AppData\LocalLow\Oracle C。 c:\程序文件\Java d。 C:\程序文件 (x86)\Java e. C:\ProgramData\Oracle **重要提示:只有在成功卸载控制面板>程序和功能中的所有java条目后才能删除此文件夹
      3. here下载并安装最新的Java SDK
      4. 完成后转到 cmd(以管理员身份运行)并尝试再次构建

      结论:据我了解,我的机器上没有正确配置/安装 java。所以所有东西的干净安装解决了我的问题。

      【讨论】:

        【解决方案6】:

        即使我使用了 2 个 gigs (-Dorg.gradle.jvmargs=-Xmx2048m),我也遇到了这个错误,但是当我将 JAVA_HOME 更改为 64 位 JDK 目录时它开始工作。使用更高版本的 Java 可能也会有所帮助(1.8+)。

        【讨论】:

          【解决方案7】:

          将参数-Xmx20484m 更改为1024 在行:

          args.push('-Dorg.gradle.jvmargs=-Xmx1024m'); 
          

          在你的项目文件中

          平台\android\cordova\lib\builders\GradleBuilder.js

          。 这对我有用

          https://forum.ionicframework.com/t/build-failed-unable-start-the-daemon-process/72171

          它在 eclipce phonegap 插件中对我有用

          【讨论】:

            【解决方案8】:

            在环境变量中,添加一个系统变量_JAVA_OPTIONS,其值为-Xmx512M

            【讨论】:

              【解决方案9】:

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

              >export _JAVA_OPTIONS="-Xmx256M"
              

              这发生在我的机器上有很多内存,但内存限制较低。 Java 决定分配一个大堆,因为它检测到机器中的 ram,但由于 ulimit,它不允许分配它。

              【讨论】:

                【解决方案10】:

                我在开发 Cordova 时遇到了同样的问题。

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

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

                【讨论】:

                  【解决方案11】:

                  这个错误时常发生在我身上。我通过在 ANDROID_HOME 文件夹中运行程序“SDK Manager”来解决这个问题。

                  【讨论】:

                    【解决方案12】:

                    我收到此错误是因为我没有安装 32 位 JDK。安装,重新启动并修复它。

                    【讨论】:

                      【解决方案13】:

                      我的解决方案是安装新的 Java SDK。我还必须更改我的 JAVA_HOME 路径以指向该新 ​​SDK

                      【讨论】:

                        【解决方案14】:

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

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

                        【讨论】:

                          【解决方案15】:

                          安装 64 位版本的 Java JDK 并将 JAVA_HOME 指向安装字典。

                          【讨论】:

                            【解决方案16】:

                            我遇到了一个非常相似的问题,有时会记录此 JAVAC 错误,有时会记录设备连接问题或插件未正确安装。例如:

                            运行“javac -version”失败

                            执行程序失败,退出代码为 3221225794。

                            我通过运行以下命令成功修复了它,该命令修复了 Windows 上的所有 DLL 问题,然后重新启动计算机。 在 powershell 中,可能需要管理员:

                            sfc /scannow
                            

                            【讨论】:

                              【解决方案17】:

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

                              • _JAVA_OPTIONS 的值为 -Xmx2048M,用于设置 Java 使用多少内存
                              • GRADLE_OPTS,值为-Dorg.gradle.jvmargs=-Xmx2048m,设置Gradle使用多少内存(这可以通过[PROJECT PATH]\platforms\android\cordova\lib\builders\GradleBuilder.js路径根据每个项目指定,尽管默认设置为2GB atm)

                              如果cordova 向Failed to run "javac -version" 抱怨,请将_JAVA_OPTIONS 中的内存更改为更低的值。

                              【讨论】:

                                猜你喜欢
                                • 2014-11-11
                                • 2015-09-15
                                • 1970-01-01
                                • 2017-05-15
                                • 1970-01-01
                                • 2019-11-26
                                • 1970-01-01
                                • 2014-08-15
                                • 1970-01-01
                                相关资源
                                最近更新 更多