web-dev-qa-db-ja.com

Cordovaは2097152KBオブジェクトヒープ用に十分なスペースを予約できませんでした

コルドバは初めてで、Android HelloWoldプロジェクトを作成しようとしています。

cordova platforms add Androidを使用すると、いくつかの例外がスローされます。

D:\CordovaSpace\helloWorld>cordova platforms add Android
Adding Android project...
Creating Cordova project for the Android platform:
        Path: platforms\Android
        Package: com.example.helloworld
        Name: HelloWorld
        Activity: MainActivity
        Android target: Android-24
Subproject Path: CordovaLib
Android project created with [email protected]
Installing "cordova-plugin-whitelist" for Android
ANDROID_HOME=D:\Java_Android_SDK\Android_sdk
Java_HOME=C:\Program Files (x86)\Java\jdk1.8.0_73
Subproject Path: CordovaLib
Starting a new Gradle Daemon for this build (subsequent builds will be faster).

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 https://docs.gradle.org/2.14.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 2097152KB object heap


* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
Failed to install 'cordova-plugin-whitelist':Error: cmd: Command failed with exit code 1
    at ChildProcess.whenDone (D:\CordovaSpace\helloWorld\platforms\Android\cordova\node_modules\cordova-common\src\superspawn.js:169:23)
    at emitTwo (events.js:106:13)
    at ChildProcess.emit (events.js:191:7)
    at maybeClose (internal/child_process.js:850:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:215:5)
Error: cmd: Command failed with exit code 1
42
Mr_Yang

Java VM(?)のメモリサイズを増やしてからもう一度お試しください。

Windowsプラットフォームで修正する方法は次のとおりです。

[スタート]-> [コントロールパネル]-> [システム]-> [詳細設定](タブ)-> [環境変数]-> [システム変数]-> [新規]に移動します。
変数名:_Java_OPTIONS
変数値:-Xmx512M

スコアとアンダースコア文字を無視しないでください。

91

私はまったく同じ問題を抱えていました。 here で提案されているように、64ビットJDKを使用するように切り替えましたが、うまくいきました。 Windows 10でIonic 3.5.0を使用していました。

11
Hamed
args.Push('-Dorg.gradle.jvmargs=-Xmx2048m') 
into 
args.Push('-Dorg.gradle.jvmargs=-Xmx1024m');

次の場所ファイル。

  1. project-folder\platforms\Android\cordova\lib\builders\GradleBuilder.js

  2. project-folder\platforms\Android\cordova\lib\builders\StudioBuilder.js

3
Kernel
args.Push('-Dorg.gradle.jvmargs=-Xmx2048m') 
 to  
args.Push('-Dorg.gradle.jvmargs=-Xmx1024m');

次の場所ファイル。

  1. project-folder\platforms\Android\cordova\lib\builders\builders.js
  2. project-folder\platforms\Android\cordova\lib\builders\GradleBuilder.js
  3. project-folder\platforms\Android\cordova\lib\builders\StudioBuilder.js
3
Abd Abughazaleh

@kemalのソリューションのようにシステムレベルで環境変数を設定すると、システム内のすべてのJVMアプリケーションのメモリサイズが設定されますが、これはほとんどの場合は望んでいないことです。

代わりに、cordova gradlebuilderプロパティファイルでヒープサイズを設定します。

args.Push('-Dorg.gradle.jvmargs=-Xmx2048m');
0
Anand

Start -> Control Panel -> System -> Advanced(tab) -> Environment Variables -> System Variablesに移動します

追加/変更Java_HOMEfrom C:\Program Files (x86)\Java\jdk1.8.0_192 to C:\Program Files\Java\jdk1.8.0_192

つまり、Program Files (x86)パスからProgram Filesパスに変更します。