Android Studio (Gradle)에서 Apache Commons 컬렉션을 추가하는 방법


98

ListUtils를 사용하려고하지만 앱을 실행했을 때이 오류가 발생했습니다.

 Caused by: java.lang.ClassNotFoundException: Didn't find class "org.apache.commons.collections.ListUtils" on path: DexPathList[[zip file "/data/app/com.meridianaspect.wiw-2/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]

그래서 나는 어떻게 든 gradle을 통해 그 라이브러리를 가져와야한다고 생각하지만 어떻게하는지 모르겠습니까?


HttpClient는 이미 Android의 일부 였지만 API 23 이상에서는 더 이상 사용되지 않습니다. stackoverflow.com/a/32157466/1085264
straya

답변:


6

모듈 루트의 libs 폴더에 jar 파일을 저장하십시오. 그런 다음 파일-> 프로젝트 설정. 왼쪽에서이 라이브러리를 추가 할 모듈을 선택하고 오른쪽에서 종속성 탭을 선택합니다. 하단에서 더하기 기호를 누르고 파일 종속성을 클릭합니다. 그런 다음 항아리를 선택하고 프로젝트를 동기화하십시오.


6
Gradle에 텍스트를 배치하고 jar 파일과 모듈을 처리해야하는 방법이 있습니까?
JK

@JK 당신은 단순히 항아리를 드롭하고 각 항아리를 지정하지 않는 것을 의미합니까?
Oleg Osipenko 2015 년

3
아니요, 항아리를 떨어 뜨리지 않고 단지 gradle에게 그것들을 가져올 저장소를 알려주는 것입니다
JK

4
'컴파일'org.apache.commons : commons-collections4 : 4.0 '
Oleg Osipenko

1
더하기 기호를 누르면 또 다른 옵션은 라이브러리 종속성이며 검색이 있습니다.-이름을 입력하고 관심있는 라이브러리를 검색합니다.
Oleg Osipenko

421

필요한 것을 선택하고 build.gradle의 종속성 블록에 추가하십시오 .

링크를 확인하여 최신 버전인지 확인하는 것이 좋습니다. 수정 사항을 자유롭게 제안하십시오.

컬렉션 : (링크)

implementation 'org.apache.commons:commons-collections4:4.4'

lang : (링크)

implementation 'org.apache.commons:commons-lang3:3.9'

압축 : (링크)

implementation 'org.apache.commons:commons-compress:1.19'

net : (링크)

implementation 'commons-net:commons-net:3.6'

io : (링크)

implementation 'commons-io:commons-io:2.6'

exec (링크)

implementation 'org.apache.commons:commons-exec:1.3'

코덱 (링크)

implementation 'commons-codec:commons-codec:1.13'

http (링크)

implementation 'org.apache.httpcomponents:httpclient:4.5.10'

유효성 검사기 (링크)

implementation 'commons-validator:commons-validator:1.6'

수학 (링크)

implementation 'org.apache.commons:commons-math3:3.6.1'

여기에서 모든 Apache 라이브러리 보기


1
그리고 lang의 경우 org.apache.commons:commons-lang3:3.4. 출처 : mvnrepository.com/artifact/org.apache.commons/commons-lang3/3.4
아담 존스

2
순, 컴파일 '평민-NET : 평민-NET : 3.3'에 대한
M. 우스만 칸

@Chad 어떤 의존성이 있는지 말해 주 FilenameUtils시겠습니까?
Iqbal

3
@Iqbal 그것은 IO에 있습니다 :compile 'commons-io:commons-io:2.5'
Glorfindel

컬렉션에 CircularFifoBuffer가없는 이유는 무엇입니까? 찾을 수 없습니다. BufferUtils도 마찬가지입니다.
안드로이드 개발자
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.