2017-03-20 6 views
1

は、私は最近、Apacheのコモンズの数学ライブラリを追加しようとしましたが、コンパイル時に次の例外に走った:Androidのジャックコンパイラを使ってJavaヒープスペースの例外を回避するにはどうすればよいですか?

Error:Execution failed for task ':app:transformClassesWithMultidexlistForDebug'. > java.lang.UnsupportedOperationException (no error message)

Error:Execution failed for task ':app:transformClassesWithPreJackPackagedLibrariesForDebug'. com.android.sched.scheduler.RunnerProcessException: Error during 'CodeItemBuilder' runner on 'static void org.apache.commons.math3.util.FastMathLiteralArrays.() (FastMathLiteralArrays.java:28-5102)': Java heap space

私はこの問題は、これらの質問に経験した問題に似ていると思います例外状態として

Android- Error:Execution failed for task ':app:transformClassesWithDexForRelease'

+1

ジャックが廃止されたことを忘れないでください。スイッチバックについて考えてみましょう –

+0

何ですか?私は今まで知らなかった。頭をアップしていただきありがとうございます。 – Saites

+0

はい、https://android-developers.googleblog.com/2017/03/future-of-java-8-language-feature.htmlをご覧ください。 –

答えて

0

、使用可能なヒープ・スペースに問題があります。ジャックコンパイラに割り当てられたヒープ領域のサイズを大きくするには、プロセスの外で実行し、適切なDEXオプション適用する必要があります。これらにより

defaultConfig { 
    jackOptions { 
     enabled true 
     jackInProcess false 
    } 
    dexOptions { 
     javaMaxHeapSize "2048M" 
    } 
} 

を、私はコンパイルエラーを乗り越えることができました。

関連する問題