분할 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.