android - latest - AAR은 전이 의존성을 포함 할 수 있습니까?



android studio gradle 3.1 4 (1)

시간이 조금 걸렸지 만 내가 찾던 것을 찾았습니다. 방금 검색어를 말한 방식이되었습니다.

이 덜 답은 내가 찾던 것과 정확히 일치했습니다.

gradle을 사용하여 라이브러리에 대해 전이 종속성이 해결되지 않음

본질적으로, 나는

transitive = true

... Bar의 build.gradle

예:

compile ('com.foo:FOO:[email protected]'){
       transitive=true
}

이렇게하면 모든 전이 라이브러리가 포함됩니다.

그러나 이로 인해 실제로 exclude 태그를 사용하여 해결할 수있는 종속성 (특히 로컬 종속성)간에 충돌이 발생할 수 있습니다.

https://ffff65535.com

지금은 OkHttp와 같은 라이브러리에 의존하는 프로젝트 Foo라고하는 라이브러리 프로젝트가 있습니다.

이제 Foo는 AAR을 생성하고이를 공공 장소로 끌어 올리는 Maven 빌드 스텝을 가지고 있습니다.

이제 프로젝트 B가 있다고 가정 해 봅시다. Bar는 Android 애플리케이션이며 Bar는 Foo에 따라 다릅니다.

글쎄요. 그러나 OkHttp를 호출하는 Bar의 Foo에서 public static 함수를 호출하면 다음 메시지가 표시됩니다.

java.lang.NoClassDefFoundError: com.squareup.okhttp.OkUrlFactory
            at com.foo.sdk.utils.OkHttpStack.<init>(OkHttpStack.java:15)

그런 일이 가능합니까? 아니면 바가 수동으로 OkHttp 및 Foo에 의존하는 다른 종속성에 의존해야합니까?





android-gradle-plugin