2015-07-19 10 views
9

Android Studio sembra sapere quando c'è una versione più recente di una dipendenza. I repository Maven hanno tutte le versioni in modo che, naturalmente, possano controllare lì ma non lo fa per tutte le dipendenze.In che modo Android Studio è a conoscenza delle nuove versioni delle dipendenze?

Notato che funziona per le dipendenze di com.google e com.android ma non per gli altri. Perché? Può essere configurato? Qualsiasi commento su questo è apprezzato.

enter image description here

risposta

2

In Android Studio questo controllo è il percorso dei controlli Lint. Potete vederlo qui:

https://android.googlesource.com/platform/tools/base/+/master/lint/libs/lint-checks/src/main/java/com/android/tools/lint/checks/GradleDetector.java

E dipendenze sono fissi in questo file:

} else if ("com.google.guava".equals(dependency.getGroupId()) && 
      "guava".equals(dependency.getArtifactId())) { 
     version = getNewerRevision(dependency, new PreciseRevision(18, 0)); 
+1

È possibile attivare manualmente il controllo di tutte le dipendenze analizzando -> Esegui controllo per nome -> Versioni libreria più recenti disponibili. – gdelente

0

Gradle fa per voi. Si noti che le versioni suggerite dipendono dalla versione gradle. Se stai usando una versione gradle non aggiornata non otterrai questi suggerimenti.

+1

Potrebbe elaborare? Come fa allora Gradle a farlo? E in che modo AS ottiene queste informazioni da Gradle? – Andrejs

+0

Gradle controlla il repository centrale di Maven per le versioni più recenti delle dipendenze che sono state aggiunte. Se non sono l'ultima cosa ti informa. – Nishad

+5

@Nishad Allora perché non funziona con altre librerie, come 'compile 'com.squareup.picasso: picasso: 2.5.0'', che ora si trova in' 2.5.2'? – nhaarman

0

Se si desidera controllare tutte le dipendenze, è possibile utilizzare questo plugin https://github.com/ben-manes/gradle-versions-plugin

Aggiungi alla tua chiamata build.gradle:

apply plugin: 'com.github.ben-manes.versions' 

E poi eseguire compito:

./gradlew dependencyUpdates 
+1

Certo, ma AS lo fa già senza plugin. Più interessati a farlo funzionare in modo semplice AS – Andrejs

Problemi correlati