2016-06-22 4 views
0

현재 IntelliJ IDEA 프로젝트가 아닌 Maven 프로젝트가 있습니다. 파일 -> 프로젝트 열기를 통해 가져온 다음 루트 pom.xml을 선택합니다.Maven을 사용하는 IntelliJ IDEA의 Multidex

모든 항목이 제대로 가져온 것 같습니다. 모든 모듈이 있고 Android 모듈이 올바르게 구성되어 있습니다.

그런 다음 실행하려는 Android 모듈에 대한 실행 구성을 추가했습니다. 만들 때

나는 다음과 같은 오류 얻을 :

Error:Android Dex: [at.demoproject] Unable to execute DX 
Error:Android Dex: [at.demoproject] com.android.dex.DexIndexOverflowException: method ID not in [0, 0xffff]: 65536 
Error:Android Dex: [at.demoproject] at com.android.dx.merge.DexMerger$6.updateIndex(DexMerger.java:484) 
Error:Android Dex: [at.demoproject] at com.android.dx.merge.DexMerger$IdMerger.mergeSorted(DexMerger.java:261) 
Error:Android Dex: [at.demoproject] at com.android.dx.merge.DexMerger.mergeMethodIds(DexMerger.java:473) 
Error:Android Dex: [at.demoproject] at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:161) 
Error:Android Dex: [at.demoproject] at com.android.dx.merge.DexMerger.merge(DexMerger.java:188) 
Error:Android Dex: [at.demoproject] at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:504) 
Error:Android Dex: [at.demoproject] at com.android.dx.command.dexer.Main.runMonoDex(Main.java:334) 
Error:Android Dex: [at.demoproject] at com.android.dx.command.dexer.Main.run(Main.java:277) 
Error:Android Dex: [at.demoproject] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
Error:Android Dex: [at.demoproject] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
Error:Android Dex: [at.demoproject] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
Error:Android Dex: [at.demoproject] at java.lang.reflect.Method.invoke(Method.java:606) 
Error:Android Dex: [at.demoproject] at org.jetbrains.android.compiler.tools.AndroidDxRunner.runDex(AndroidDxRunner.java:188) 
Error:Android Dex: [at.demoproject] at org.jetbrains.android.compiler.tools.AndroidDxRunner.main(AndroidDxRunner.java:336) 

을하지만 이미 설정 및 안드로이드 - 받는다는 - 플러그인이 제대로 작동 multidex입니다. (Maven을 사용하여 명령 줄에 직접 빌드 할 때) IntelliJ가 android-maven-plugin을 사용하고 있지 않다고 의심하지만 multidex를 사용하려면 어떻게해야합니까? 또한 프로젝트를 Gradle로 변환하는 것은 현재 옵션이 아닙니다.

답변

0

좋아, 나는 그것을 스스로 알아 냈다.

IntelliJ에서 빌드하는 대신 Maven을 사용할 수 있습니다. Run/Debug 구성을 열고 "Before launch"목록에서 "Make"를 제거하면됩니다. 그런 다음 "Run Maven Goal"을 추가하고 실행할 목표를 입력하십시오. 제 경우에는 "새로 설치"하십시오.

관련 문제