' (ok) gradle'ın bağımlılık grafiğinde ne anlama geliyor?'/> ' (ok) gradle'ın bağımlılık grafiğinde ne anlama geliyor?'/> ' (ok) gradle'ın bağımlılık grafiğinde ne anlama geliyor?'/> '->' (ok) gradle'ın bağımlılık grafiğinde ne anlama geliyor? | tutuappapks.com

Soru '->' (ok) gradle'ın bağımlılık grafiğinde ne anlama geliyor?


Bazı Android testlerini çalıştırmaya çalışıyorum, ancak derleyici çoklu dex dosyalarının varlığından şikayet ediyor.

Multiple dex files define Lorg/hamcrest/MatcherAssert;

Bu yüzden yinelenen bağımlılıkları filtrelemeye çalışıyorum: $ ./gradlew -q dependencies app:dependencies --configuration androidTestCompile

Ancak şu çıktıyı elde ediyorum:

------------------------------------------------------------
Project :app
------------------------------------------------------------

androidTestCompile - Classpath for compiling the androidTest sources.
+--- org.mockito:mockito-core:1.9.5
|    +--- org.hamcrest:hamcrest-core:1.1 -> 1.3
|    \--- org.objenesis:objenesis:1.0 -> 2.1
+--- com.google.dexmaker:dexmaker-mockito:1.2
|    +--- com.google.dexmaker:dexmaker:1.2
|    \--- org.mockito:mockito-core:1.9.5 (*)
+--- com.android.support.test.espresso:espresso-core:2.0
|    +--- com.squareup:javawriter:2.1.1
|    +--- org.hamcrest:hamcrest-integration:1.1
|    |    \--- org.hamcrest:hamcrest-core:1.1 -> 1.3
|    +--- org.hamcrest:hamcrest-library:1.1
|    |    \--- org.hamcrest:hamcrest-core:1.1 -> 1.3
|    +--- javax.inject:javax.inject:1
|    +--- com.android.support.test.espresso:espresso-idling-resource:2.0
|    +--- com.android.support.test:testing-support-lib:0.1
|    |    \--- junit:junit-dep:4.10
|    |         \--- org.hamcrest:hamcrest-core:1.1 -> 1.3
|    +--- com.google.code.findbugs:jsr305:2.0.1
|    +--- javax.annotation:javax.annotation-api:1.2
|    \--- org.hamcrest:hamcrest-core:1.1 -> 1.3
+--- com.android.support.test:testing-support-lib:0.1 (*)
+--- org.powermock:powermock-module-junit4:1.5.6
|    +--- junit:junit:4.11
|    |    \--- org.hamcrest:hamcrest-core:1.3
|    \--- org.powermock:powermock-module-junit4-common:1.5.6
|         +--- junit:junit:4.4 -> 4.11 (*)
|         +--- org.powermock:powermock-core:1.5.6
|         |    +--- org.powermock:powermock-reflect:1.5.6
|         |    |    \--- org.objenesis:objenesis:2.1
|         |    \--- org.javassist:javassist:3.18.2-GA
|         \--- org.powermock:powermock-reflect:1.5.6 (*)
\--- org.powermock:powermock-api-mockito:1.5.6
     \--- org.powermock:powermock-api-support:1.5.6
          +--- org.powermock:powermock-core:1.5.6 (*)
          \--- org.powermock:powermock-reflect:1.5.6 (*)

(*) - dependencies omitted (listed previously)

Oklar (->) ne anlama geliyor diye kafam karıştı. Ne demek istiyorlar?


39
2018-01-14 21:03


Menşei




Cevaplar:


Bu, bağımlılık grafiğinin aynıyla birden fazla bağımlılık içerdiği anlamına gelir group ve module ancak farklı sürümler için örn. org.hamcrest:hamcrest-core. Gradle, çakışan sürümleri otomatik olarak çözümlemeye çalışır; varsayılan olarak en son sürüm seçilir. Sol tarafında -> İstenen sürüm, sağ tarafta seçilecek olan sürümdür. İşte benzer bir soru bulunabilir.


72
2018-01-14 21:05



Ayrılmış durumdayım, atılan bağımlılıkların ne anlama geldiğini anlatabilir misiniz? - java123999
Bu, raporun başka bir yerinde, bağımlılığın zaten tüm alt bağımlılıklarla sunulduğu anlamına gelir, dolayısıyla burada sadece kök vardır. - Opal
@ Java123999. Bir bağımlılığın kendi bağımlılıkları olabilir. Ayrıca, bir bağımlılığın iki kez listelendiği de olabilir. Böyle bir durumda, sadece ilk giriş için bağımlılıklar yazdırılırken, ikinci giriş, (*). - Opal
Yani * temelde yinelenen bağımlılıkları gösterir? - java123999
En azından x işaretini yazmak zorunda kalmazsam, sadece yazabilirim: evet. - Opal