분할 lib_main이 여러 번 정의되었습니다.


102

분할 lib_main이 여러 번 정의되었습니다.

"com.android.tools.build:gradle:2.0.0-alpha3"에서 빌드는 성공했지만 "com.android.tools.build:gradle:2.0.0-alpha5"에서 발생하는 오류입니다.

콘솔 오류


드디어 즉시 작업 !! com.android.tools.build:gradle:2.0.0-alpha8 및 gradle.properties "org.gradle.jvmargs = -Xmx8g"가 변경되어 해결되었습니다.


똑같은 문제가 있습니다. 제품 맛과 applicationIdSuffix를 우연히 사용하고 있습니까?
마이클 드 소토

불행히도 "제품 버전"및 "applicationIdSuffix"를 사용하지 마십시오. 그러나 "MultiDex"를 사용합니다.
shinhyo

6
동일한 오류가 발생하면 즉시 실행을 비활성화하는 것이 도움이됩니다. Android 6을 실행하는 기기에서만 발생합니다. Android Studio 2.0 5 applicationIdSuffix, MultiDex 사용, 제품 버전 사용 안함
Happy Dev

1
@Happydev Instantrun을 비활성화하여 해결했습니다!
신효

1
@bkurzius 그것은 나에게 해결책처럼 이음새가 없으며 전체 업데이트 지점이 즉시 실행되었습니다. 다른 프로젝트의 Marshmallow에서 즉시 실행이 훌륭하게 작동하기 때문에 누군가가 라이브러리 또는 플러그인 제거와 같은 것을 찾을 수 있기를 바랍니다.
Happy Dev

답변:


103

InstantRun이 무엇인지 궁금한 사람들을 위해 (그림의 첫 번째 설정) : 여기에 이미지 설명 입력

예, 해당 설정을 비활성화하면 문제가 해결됩니다.

01/19/16 수정

'com.android.tools.build:gradle:2.0.0-alpha6'은 3 일 전에 출시되었습니다. 새 버전을 사용하면 "Split lib_main이 여러 번 정의되었습니다"오류가 사라지고 앱 설치가 성공했지만 이제 런타임 오류가 발생합니다.

java.lang.RuntimeException: Unable to instantiate application
com.android.tools.fd.runtime.BootstrapApplication:
java.lang.ClassNotFoundException: Didn't find class
"com.android.tools.fd.runtime.BootstrapApplication" on path:
DexPathList[[zip file "/data/app/com.onegravity.k10.pro2-2/base.apk",
zip file "/data/app/com.onegravity.k10.pro2-/split_lib_main.apk"]

Caused by: java.lang.ClassNotFoundException: Didn't find class
"com.android.tools.fd.runtime.BootstrapApplication" on path:
DexPathList[[zip file "/data/app/com.onegravity.k10.pro2-2/base.apk",
zip file "/data/app/com.onegravity.k10.pro2-2/split_lib_main.apk"]

Suppressed: java.io.IOException: No original dex files found for dex location
/data/app/com.onegravity.k10.pro2-2/base.apk

Suppressed: java.lang.ClassNotFoundException:
com.android.tools.fd.runtime.BootstrapApplication

즉시 실행을 끄면 해당 오류가 제거됩니다. com.android.tools.build:gradle:2.0.0-alpha7 ...을 기다립니다.

01/25/16 수정

'com.android.tools.build:gradle:2.0.0-alpha7'이 이틀 전에 출시되었습니다.

2.0.0-alpha6과 동일한 예외가 발생합니다.


2
물론 오늘 아침 내 업데이트의 패배 전체 포인트의 종류를 추측 : - /
bkurzius

2
빌드 시스템과 싸우는 데 점점 더 많은 시간을 보내는 것 같습니다. Android 개발이 점점 더 빌드 / 배포 지향적이되고 코딩이 줄어드는 것과 같습니다. 저는 Gradle 빌드 시스템의 유연성을 좋아하기 때문에 정말 안타깝습니다.
Emanuel Moecklin

1
그들은 즉시 실행을 못 할 수도 있다면 그것은 가치가 고통을하지만 지금까지 내 경험되지 않았습니다 좋은 :-( 것
bkurzius

인스턴트 실행으로 실행되는 다른 앱에서도이 기능을 꺼야했습니다. 즉시 실행이 작동하지 않는 경우가 너무 많습니다. 것 같아요 아직 알파 ...
엠마누엘 Moecklin

감사합니다 .. 나는 안정 버전 2.3.1에서 이것을 얻고 있었다
shadygoneinsane

161

그냥 삭제 build 폴더app모듈 및 재 구축 프로젝트를!

문제가 해결됩니다!.


2
큰! 이것은 올바른 솔루션으로 표시되어야합니다. 감사합니다
Hernan Arber 2018

1
작동했습니다! AVD를 다시 빌드하고 재부팅해도 도움이되지 않았습니다!
MatejC

1
"캐시를 무효화하고 다시 시작"하면 빌드도 무효화되지 않습니까? 분명히 있기 때문에이 경우에 작동하지 않습니다
GabrielOshiro

비활성화는 선호되는 방법이 아닙니다. 'build'폴더를 삭제할 필요가 없습니다. 그냥 재 구축 프로젝트를.
하기 Vaibhav

48

Gradle에서 앱 이름을 리팩토링하고 변경 한 후에이 문제가 발생했습니다. AskQ의 리드에 따라 프로젝트를 다시 빌드했습니다 (약간 다른 경로를 따라).

Build-> Clean Project

뒤에

Build-> Rebuild Project

문제 해결


11

회복:

(projectFolder) / app / build 폴더를 삭제 하고 다시 빌드 하는 것이 저에게 효과적 이었습니다. (@AskQ에 의해 답변 됨)

Build> Clean Project 도 효과가 있었는지 궁금합니다 . Android Studio GUI 메뉴에서.

기피:

제 경우에는 프로젝트를 복사하여 붙여 넣었 기 때문에 문제가 발생한 것으로 보이므로 두 프로젝트의 이름이 같습니다.
다른 원인과 마찬가지로 원인이 무엇인지 알면 사용자가 이러한 우려를 피하는 데 도움이 될 수 있습니다.


동일한 오류가 발생했고 Clean Projekt 후 앱이 다시 작동했습니다.
Franzi

전체 청소 / 재 구축도 저에게 효과적이었습니다. 좋은 측정을 위해 중간에 연결된 장치를 다시 시작했습니다.
Majestic12


2

Android 스튜디오 2.3.3 설정에서 인스턴트 실행을 비활성화 한 후 저에게 효과적이었습니다 ...

로 이동 설정 -> 빌드, 실행 및 개발 -> 인스턴트 실행 -> 선택을 취소 핫 스왑에 즉시 실행 사용 후 청소 프로젝트를하고 다시 프로젝트를 다시 빌드!


설정에서 인스턴트 실행을 비활성화하는 것도 저에게 효과적이었습니다.
Michael Nwanna
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.