2014-11-12 3 views
0

Я пытаюсь настроить gwt на Android-проект и после добавления sdk в мой путь сборки, компиляция зависает этой проблемой.Pre Dexing gwt-user.jar вызывает OutOfMemoryError из сборщика мусора

Я использую IntelliJ Ultimate 13.1, а приложение для Android - это скелет, который поставляется вместе с ним.

вот полный отслеживающий:

Error:Android Pre Dex: [gwt-user.jar] Unable to execute DX 
Error:Android Pre Dex: [gwt-user.jar] java.lang.OutOfMemoryError: GC overhead limit exceeded 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.util.Bits.makeBitSet(Bits.java:38) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.util.BitIntSet.<init>(BitIntSet.java:35) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.ssa.SetFactory.makeDomFrontSet(SetFactory.java:66) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.ssa.DomFront.run(DomFront.java:103) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.ssa.SsaConverter.placePhiFunctions(SsaConverter.java:297) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.ssa.SsaConverter.convertToSsaMethod(SsaConverter.java:51) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.ssa.Optimizer.optimize(Optimizer.java:98) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.ssa.Optimizer.optimize(Optimizer.java:72) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.dex.cf.CfTranslator.processMethods(CfTranslator.java:299) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.dex.cf.CfTranslator.translate0(CfTranslator.java:139) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.dex.cf.CfTranslator.translate(CfTranslator.java:94) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.command.dexer.Main.processClass(Main.java:682) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.command.dexer.Main.processFileBytes(Main.java:634) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.command.dexer.Main.access$600(Main.java:78) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:572) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:284) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:166) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.command.dexer.Main.processOne(Main.java:596) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.command.dexer.Main.processAllFiles(Main.java:498) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.command.dexer.Main.runMonoDex(Main.java:264) 
Error:Android Pre Dex: [gwt-user.jar] at com.android.dx.command.dexer.Main.run(Main.java:230) 
Error:Android Pre Dex: [gwt-user.jar] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
Error:Android Pre Dex: [gwt-user.jar] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
Error:Android Pre Dex: [gwt-user.jar] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
Error:Android Pre Dex: [gwt-user.jar] at java.lang.reflect.Method.invoke(Method.java:606) 
Error:Android Pre Dex: [gwt-user.jar] at org.jetbrains.android.compiler.tools.AndroidDxRunner.runDex(AndroidDxRunner.java:161) 
Error:Android Pre Dex: [gwt-user.jar] at org.jetbrains.android.compiler.tools.AndroidDxRunner.main(AndroidDxRunner.java:294) 

ответ

0

Раскрытие: Я никогда не делал каких-либо серьезных Dev Android, и я на самом деле не знаю, что «до Декс» на самом деле означает.

Нет абсолютно никакой причины для упаковки gwt-пользователя в приложение для Android.

Либо вы пакет JS, который был выпущен GWT, и вам нужно только GWT во время компиляции; или вы хотите использовать RequestFactory, и вместо этого вы должны использовать requestfactory-client.jar. Могут быть и другие ситуации, когда вы хотите использовать другие классы GWT, которые не находятся в requestfactory-client (например, RegExp или SafeHtml), и в этом случае вам придется либо извлечь их в свой собственный JAR, либо просто использовать gwt-servlet.

+0

Это кажется разумным, я думаю, я использовал GWT и не был действительно уверен, почему, посмотрю, как вытащить его из моего проекта, спасибо! –

Смежные вопросы