Utilizzando ViewPagerIndicator libreria con Android Studio e Gradle

Sto cercando di usare il Jake di Wharton ViewPagerIndicator biblioteca, ma non riesco a farlo funzionare con il mio Gradle progetto in Android Studio.

Aggiungo come una dipendenza, in questo modo:

    dependencies {
       //... other ommitted
       compile 'com.viewpagerindicator:library:2.4.1'
       compile 'com.android.support:support-v4:19.0.1'
       compile 'com.nineoldandroids:library:2.4.0'
       //...
    }

ma il progetto non sembra riconoscere a componenti della libreria. Mi chiedo se c’è un problema di dipendenza con il supporto di diversi-v4 o qualcosa in nineoldandroids…?

InformationsquelleAutor loeschg | 2014-01-15

 

19 Replies
  1. 195

    Ho appena spinto una versione all’interno maven centrale in modo che solo bisogno di aggiungere che la dipendenza :

    compile 'fr.avianey.com.viewpagerindicator:library:[email protected]'

    E dichiarare maven centrale come questo :

    repositories {
        mavenCentral()
    }

    Speranza che aiuta…

    • Grazie. Non ho voglia di aggiungere qualche caso repository maven per il mio script di build. Questo molto meglio.
    • Ho aggiunto il detto di dipendenza, ma non riesce a risolvere sul gradle costruire. Esatto errore: Failed to resolve: fr.avianey.com.viewpagerindicator:library:2.4.1 Qualsiasi motivo?
    • hai aggiunto il repository nella sezione giusta… voglio dire, non il plugin repository…
    • L’ho aggiunto nel dependency sezione singoli moduli build.gradle file. Qui
    • basta metterlo al di fuori di android chiusura… allo stesso livello di come applicare il plugin
    • Errore:(4, 0) Gradle DSL metodo non trovato: “compile()’ cause Possibili:Il progetto ‘Pigen’ possibile utilizzare una versione di Gradle che non contiene il metodo. Gradle settingsThe costruire il file può essere che manchi un Gradle plugin. Applicare Gradle plugin che Cosa devo fare ora? Quale plugin devo usare?
    • Mi manca qualcosa qui?
    • fr.avianey.com.viewpagerindicator:library:[email protected] – ti manca l’ @aar
    • Questo non ha funzionato per me, come il pom file sembra avere una dipendenza com.google.android:android. Variant Debug has a dependency on version 4.1.1.4 of the legacy com.google.android Maven artifact, which corresponds to API level 15.
    • Esplicitamente escluso transitivo dipendenze fissa la compilazione: compile('fr.avianey.com.viewpagerindicator:library:2.4.1') { transitive = false; }
    • Questo non funziona in 4.4 e getta Didn't find class com.viewpagerindicator.CirclePageIndicator
    • che non è legato alla versione di android, se la tua versione dell’sdk o il tuo progetto di installazione
    • Grazie, hai salvato il mio tempo buddy
    • aggiornamento superiore 2.4.1.1 che passare da deprecato FloatMath la Matematica, quindi è possibile utilizzare proguard con l’ultima versione dell’SDK
    • Breve e semplice, esattamente quello che mi serviva. Molte grazie m8 🙂
    • grazie, ha funzionato per me
    • Grande uomo. Hai salvato il mio tempo.

  2. 147

    Un po ‘ in ritardo alla festa, ma qui:

    Jake Wharton non ha rilasciato maven come un aar. C’è un gruppo che se ha fatto un aar disponibile attraverso i loro server, è possibile impostare come questa nella compilazione.gradle:

    Aggiungere questo al tuo repository di origine dopo aver dichiarato il plugin:

    repositories {
        maven { url "http://dl.bintray.com/populov/maven" }
        mavenCentral()
    }

    Questo sarà fonte di loro maven repo, che contiene il pacchetto di un aar che hanno messo insieme. Una volta fatto questo, si può semplicemente aggiungere questa riga al tuo dipendenze e tutto dovrebbe funzionare una volta che si sincronizza il tuo progetto con il gradle file.

    Assicurarsi che il plugin di Maven Repo è elencato sopra la mavenCentral() voce. In caso contrario, si cercherà prima di maven archivio centrale e trovare il pacco sbagliato.

    Android Studio genera due build.gradle file per progetti, assicurati di aver messo questo nella giusta!

    dependencies {
        //...
        compile 'com.viewpagerindicator:library:[email protected]'
        //...
    }

    Usiamo nelle nostre app se vuoi vedere un esempio funzionante:

    https://github.com/pandanomic/SUREwalk_android/blob/master/surewalk/build.gradle

    • Grazie! Volevo solo sottolineare che bintray repo deve essere al di sopra mavenCentral(). Si può leggere questo: blog.haunted-soft.com/2013/10/…
    • Grazie, mi ha salvato un sacco di tempo.
    • Questo non sembra per lavoro ho seguito la procedura e quando android studio aggiorna il progetto ottengo “Gradle” XYZ ” progetto di aggiornamento non riuscito: Artefatto ‘com.viewpagerindicator:biblioteca:2.4.1:libreria.aar’ non trovata.
    • Dopo un sacco di pasticciare in giro ho trovato le versioni più recenti di android studio di produrre progetti con due gradle file dentro all’app/costruire.gradle e uno a /build.gradel quello della root directory in cui è possibile aggiungere le opzioni di configurazione comune a tutti i sub-progetti/moduli. Hai bisogno di mettere: allprojects { repository { maven { url “dl.bintray.com/populov/maven” } mavenCentral() } } in alto a livello di costruire.gradle per farlo funzionare
    • Ho incluso un link in fondo il mio post un esempio
    • Ho fatto vedere l’esempio. Prendo l’esempio sono i due file da root e da app. In app costruire.gradle ho aggiunto i repository { maven { url “dl.bintray.com/populov/maven” }mavenCentral()} e le dipendenze { compilazione ‘com.viewpagerindicator:library:[email protected]’ io sono probabilmente manca qualcosa, dal momento che ricevo l’errore: Errore:Artefatto ‘com.viewpagerindicator:biblioteca:2.4.1:libreria.aar’ non trovata. (Sto usando A. S. 5.8)
    • Aspettare, eri il che significa che non funziona o che non è un esempio significativo?
    • L’esempio non funziona con android studio 5.8 gradle 0.9.+, ma è completo.
    • Cosa gradle e Android Studio versioni usi?
    • 0.9.+ su un vecchio progetto (ma funziona ancora lì). Forse provare ad aggiornare 0.10.+? Ecco un esempio che da un gradle migrazione l’ho fatto per un amico di progetto all’inizio di questa settimana: github.com/pandanomic/utexas-utilities/blob/master/build.gradle
    • Grazie per aver cercato di aiutarmi, ha cambiato, ma non riesco ancora a farlo funzionare, ancora si lamenta su “Errore:Artefatto ‘com.viewpagerindicator:biblioteca:2.4.1:libreria.aar’ non trovato.”. Ho caricato una versione del mio file, qui: textuploader.com/r346
    • Ho avuto lo stesso errore. Ho quasi preso a lavorare utilizzando compile group: 'com.viewpagerindicator', name: 'library', version: '2.4.1', ext: 'apklib', ma poi imbattuto in un problema con il duplicato AndroidManifest.xml file.
    • Ho capito di lavoro.. ma non utilizzando maven. Ho creato una cartella denominata librerie nella mia root e ci ho messo il codice sorgente. Il codice che ho fatto che ha lavorato come una biblioteca. Poi ho importet che come modulo.
    • attenzione ora la dipendenza è compile ‘com.viewpagerindicator:biblioteca:2.4.1’ [riferimento:]mvnrepository.com/artifact/com.viewpagerindicator/library/2.4.1
    • Vi sbagliate di grosso. Tutta la ragione per cui è elencato con un aar è in mavencentral è un apklib e non ha uno. Specificando il bintray repo prima mavenCentral(), usa l’aar uno lì, invece. Inoltre, la persona che cura senza verificare prima, si prega di essere più approfondita prima di apportare modifiche.
    • si sta tentando di compilare la libreria sbagliata. È necessario utilizzare l’aar in bintray repo specificato nella risposta di cui sopra. C’è una discreta quantità di disinformazione in questo thread non vengono aiutati da persone che fanno male modifiche alla mia risposta.
    • Oggi si dovrebbe rimuovere il “@aar”, gradle non riesce a trovarlo, ma funziona con “compilare” com.viewpagerindicator:biblioteca:2.4.1′”
    • questo non è corretto. Come si può vedere nel link qui sotto, l’aar è ancora lì. dl.bintray.com/populov/maven/com/viewpagerindicator/library/…
    • Brillante. La cosa poteva funzionare solo ora. Posso confermare che la dipendenza finiture in [email protected], che è la versione corretta per farlo funzionare.
    • si dovrebbe usare questa risposta al 2016

  3. 56

    Sto usando gradle 0.10.+ con Android Studio 0.8.2 e accettato risposta non ha funzionato per me. Queste sono le piccole modifiche che ho dovuto fare per avere l’ABS lavora nel mio progetto:

    Nel livello superiore build.gradle file di progetto aggiungere il repository maven in allprojects config come questo:

    allprojects {
       repositories {
          maven { url "http://dl.bintray.com/populov/maven" }
          mavenCentral()
       }
    }

    E del modulo build.gradle file di aggiungere la dipendenza senza @aar:

    dependencies {
       //...
       compile 'com.viewpagerindicator:library:2.4.1'
       //...
    }
    • anche nota se si utilizza la libreria di supporto altrove e lo hanno aggiunto alle vostre dipendenze, si potrebbe ottenere un errore strano dato che viewpager porta anche la sua versione di supporto v4. fare riferimento a questo link stackoverflow.com/questions/20989317/…
  4. 48

    Jitpack.io è grande per questa situazione.

    Prima, aggiungere la seguente repository:

    repositories {
        //...
        maven { url "https://jitpack.io" }
    }

    Poi, basta aggiungere la dipendenza indicando il repo GitHub:

    dependencies {
        compile 'com.github.JakeWharton:ViewPagerIndicator:[email protected]'
    }
    • sicuramente la risposta corretta
    • Salvato la giornata, grazie 🙂 io il tuo post di risposta da qualche altra parte stackoverflow.com/questions/25702884/….
    • Andres – È ok se prendo il gradle solo?
    • Questo ha funzionato per me. Grazie! Un sacco di vecchi risposte qui intorno…
    • 2018, e solo questo funziona bene.
  5. 25

    Aggiungere questo al tuo dipendenze app del modulo di costruire.gradle file in questo modo:

    dependencies {
       compile 'com.github.JakeWharton:ViewPagerIndicator:2.4.1'
       ...
    }
    • Questa è la risposta corretta. Le altre risposte sono overkill alla data questa risposta.
    • Idd questo è il modo corretto per farlo. Dal momento che si va direttamente alla fonte progetto su GitHub, saltare 3 siti di terze parti.
    • Risposta migliore, gli altri sono overkill
  6. 7

    Ho fatto il trucco seguendo questo. Non c’è bisogno di libreria di importazione o nulla. A soli due passi e bingo, funziona perfettamente.

    A costruire.gradle(Progetto:…):

    allprojects {
            repositories {
                ...
                maven { url "https://jitpack.io" }
            }
        }

    A costruire.gradle(Modulo:app):

    dependencies {
                compile 'com.github.JakeWharton:ViewPagerIndicator:2.4.1'
        }
  7. 5

    Non sono riuscita a importare il progetto con una qualsiasi delle risposte. Sto usando Android Studio 0.8.6 e gradle 1.12.

    L’unica soluzione che ho pensato è stato scaricato il .aar libreria dal:

    http://dl.bintray.com/populov/maven/com/viewpagerindicator/library/2.4.1/

    e quindi importare la libreria in gradle come questo:

     repositories {
          flatDir {
            dirs 'libs'}
       }
    
     dependencies {
        compile fileTree(dir: 'libs', include: ['*.jar'])
        compile 'com.android.support:appcompat-v7:20.0.0'
        compile(name:'library-2.4.1', ext:'aar') 
      }

    Spero che questo aiuta!

    • Giusto per chiarire, library-2.4.1.aar deve essere messo nel modulo libs directory, è necessario creare se non esiste già.
    • Questo è stato l’unico collegato a base di approccio che ha funzionato per me.
  8. 4

    Sto usando Studio 0.8.6 e Gradle 1.12

    Una differenza nel mio progetto potrebbe essere stato il fatto che sto usando il compatbility biblioteche fatto gradle si lamentano di avere il support-v4 lib due volte.

    Così ho dovuto escludere il già incluso support-v4 come questo:

    dependencies {
        compile fileTree(dir: 'libs', include: ['*.jar'])
        compile 'com.android.support:support-v4:19.0.1'
        compile 'com.android.support:appcompat-v7:19.0.1'    
        compile ('com.viewpagerindicator:library:2.4.1') {
            exclude module: 'support-v4'
        }
    }

    Poi è anche lamentato di avere la AndroidManifest.xml file due volte.

    Così ho aggiunto anche exclude 'AndroidManifest.xml' in android sezione come questa:

    android {
        packagingOptions {
            exclude 'AndroidManifest.xml'
        }

    Poi ha funzionato.

    • non funziona : Errore:l’Imballaggio per la dipendenza com.viewpagerindicator:biblioteca:2.4.1 è ‘apklib” e non è supportato. Solo ” aar ” biblioteche sono supportati.
  9. 3

    si prega di assicurarsi che il supporto:supporto-v4 è la stessa in tutte le librerie e la vostra applicazione, a volte provoca problemi in modo da utilizzare lo stesso supporto:supporto-v4 attraverso libs e il progetto dell’applicazione.

    • Sì, questa è una possibilità. C’è una richiesta di pull aperto per aggiornare il v4 libreria di supporto (github.com/JakeWharton/Android-ViewPagerIndicator/pull/271). Non sembra questo progetto è mantenuto attivamente… 🙁
    • Ehi, ma ViewPagerInidicator è android library. Ciò significa che se si utilizza maven, allora è probabilmente apklib manufatto e gradle funziona con la guerra manufatto solo
  10. 3

    Post contrassegnato come risposta non ha funzionato per me…Gradle si è lamentato di “Connessione rifiutata”.

    Considerando che sembra stabile dopo tutto questo tempo, mi basta scaricare il file aar da https://bintray.com/populov/maven/com.viewpagerindicator:library, copiato nella mia cartella librerie, e si fa riferimento in questo modo:

    dependencies {
    ...
    compile 'com.viewpagerindicator:library:[email protected]'
    }
    • Che strano. Ho appena usato lo stesso metodo per aggiungere un altro progetto all’inizio di questa settimana e funziona ancora bene per me :/
    • Questo non è più giusto consiglio, come @aar suffisso non è più necessario.
    • Non ha funzionato per me; ha Artifact 'library.aar (com.viewpagerindicator:library:2.4.1)' not found. Searched in the following locations: https://jcenter.bintray.com/com/viewpagerindicator/library/2.4.1/library-2.4.1.aar.
  11. 2

    Questo è quello che ha funzionato per me:

    repositories {
       jcenter()
    //maven { url "http://dl.bintray.com/populov/maven" }
       mavenCentral()
    }

    io.e, non usare il repo URL.

    quindi utilizzare:

    dependencie {
        ....
        compile 'com.mcxiaoke.viewpagerindicator:library:[email protected]'
        ....
    }
  12. 2
    Add it in your build.gradle at the end of repositories:
    Ste 1
     repositories {
            //...
            maven { url "https://jitpack.io" }
        }
    Step 2. Add the dependency in the form
    
        dependencies {
                compile 'com.github.JakeWharton:ViewPagerIndicator:[email protected]'
        }
  13. 2

    Anche provare a mettere il repository maven prima di altri.

     buildscript {
        repositories {
            maven { url "http://dl.bintray.com/populov/maven" }
            mavenCentral()
            jcenter()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:1.3.0'
    
            //NOTE: Do not place your application dependencies here; they belong
            //in the individual module build.gradle files
        }
    }
    
    allprojects {
        repositories {
            maven { url "http://dl.bintray.com/populov/maven" }
            mavenCentral()
            jcenter()
        }
    }

    E costruire con le dipendenze:

      apply plugin: 'com.android.application'
    
    android {
        compileSdkVersion 23
        buildToolsVersion "23.0.1"
    
        defaultConfig {
            applicationId ""
            minSdkVersion 10
            targetSdkVersion 23
            versionCode 1
            versionName "1.0"
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
    }
    
    dependencies {
        compile fileTree(dir: 'libs', include: ['*.jar'])
        compile 'com.android.support:appcompat-v7:23.0.1'
        compile 'com.viewpagerindicator:library:2.4.1'
    }
  14. 2

    Per amore della varietà, qui è una risposta che non fa uso di maven:

    1. Download zip/tgz da ViewPagerIndicator

    2. Nella finestra di progetto, selezionare il progetto di navigazione.

    3. Vai al progetto > Nuovo > Modulo.

    4. Importazione Gradle Progetto

    5. Individuare e selezionare il scompattato la cartella della libreria. Il nome del modulo quello che si desidera. Ho chiamato viewPagerIndicator

    6. Continuare a fare clic su avanti fino a raggiungere l’ultima finestra in cui Finish è cliccabile. Se si ottiene il Android Support Library is not installed messaggio, non ti preoccupare. Basta andare avanti e fare clic su Finish.

    7. Attendere gradle costruire e compilazione del progetto alla fine. Una volta completato, di aggiungere a questo dipendenze { .. } in build.gradle (Module:app):

       compile project(':viewPagerIndicator')

    La biblioteca è ora disponibile per il vostro uso.

  15. 0

    Si prega di controllare questo primo

    Android Studio – IMPREVISTI di LIVELLO SUPERIORE ECCEZIONE:

    se questi controlli sono ok non menzionati qui di seguito.

    Non c’è bisogno di includere il supporto-v4 come dipendenza del modulo perché ViewPagerIndicator libreria già avere il supporto-v4 come la sua dipendenza. Così si può provare a rimuovere e fare il sync con gradle utilizzando piccolo grazioso gradle disponibile il pulsante nella barra degli strumenti –

    Utilizzando ViewPagerIndicator libreria con Android Studio e Gradle

    Aggiornare la tua domanda, se hai trovato qualche errore durante la sincronizzazione.

    AGGIORNAMENTO :

    Non sono sicuro ma potrebbe essere un problema non ho trovato alcuna ViewPagerIndicator Libreria in gradle. JackWarton ha spostato actionbarsherlock in gradle ma ViewPagerIndicator ancora utilizzando maven.

    • Grazie, @pyus13. Sì, sincronizzazione pulsante progetto è il primo passo quando si aggiunge una nuova dipendenza. Che non era il problema. Ho aggiornato la mia domanda.
    • non ho trovato che jackwarton ha spostato viewpagerindicator in gradle. Potrebbe essere un problema.
  16. 0

    È sufficiente includere il ViewPagerIndicator libreria direttamente all’interno dell’applicazione, come descritto qui

    Consente di importare il ViewPagerIndicator biblioteca come un “Progetto Esistente” per il progetto corrente.

  17. 0

    Anche per me qualsiasi soluzione di cui sopra non ha funzionato. Ma questo ha funzionato per me.

    1. Basta inserire la richiesta librabry da qui Viewpagerindicator Biblioteca

    2. Includere questo nella vostra app del modulo di costruire.gradle (non hanno repository sono solo al di sopra di dipendenze.

    HTML:

    repositories {
        flatDir{
            dirs 'libs'
        }
    }

    1. aggiungi questo nel tuo dipendenze.

    HTML:

    compile (name:'library-2.4.1',ext:'aar')

  18. 0

    Per riassumere: è possibile cercare “ViewPagerIndicator” in http://mvnrepository.com/, troverete com originale.viewpagerindicator non hanno il marcatore rosso “Pacchetti Android”, quindi non è possibile utilizzarlo con Gradle. È possibile trovare un altro con il pennarello rosso, assicurarsi che ha la stessa versione di quella originale. (cioè quello di creare un pacchetto android basata su quella originale)

  19. 0

    È un problema di più recente gradle.
    Basta cambiare dipendenza come di seguito.

    implementation 'com.inkapplications.viewpageindicator:library:2.4.3'

Lascia un commento