13

Ho appena iniziato un progetto molto semplice e ho provato ad utilizzare sia il compilatore ButterKnife che Jack, ma sembra che non si affrontino bene.ButterKnife non funziona con Jack?

Gradle versione plugin: 2.2.0-Alpha5

nel mio modulo build.gradle ho aggiunto:

compile 'com.jakewharton:butterknife:8.2.1' 
annotationProcessor 'com.jakewharton:butterknife-compiler:8.2.1' 

E il messaggio di errore è:

Error:Execution failed for task ':app:transformJackWithJackForDebug'. 
java.lang.AssertionError: java.lang.IllegalArgumentException 

Mi sono perso qualcosa o è solo che non sono compatibili?

+1

Voto solo perché il titolo della domanda è fantastico !!! – JustSomeDude

risposta

3

Prova a rimuovere apply plugin: 'android-apt' nel gradle della tua app.

Come nel readme, si dice:

Nota: Se si utilizza il nuovo compilatore Jack con la versione 2.2.0 o più recente non è necessario il plugin 'Android-apt' e può invece sostituire apt con annotationProcessor quando si dichiara la dipendenza del compilatore.

+0

No, non ho mai aggiunto il plugin per Android-apt. – Marvin

+2

questo potrebbe aiutarti https://github.com/JakeWharton/butterknife/issues/616 –

3

Grazie al suggerimento di @isnotmenow, ho provato a cambiare la versione di ButterKnife a 8.1.0 e funziona bene. Ma sia la 8.2.0 che la 8.2.1 si lamentano delle eccezioni, ho inserito uno an issue nella pagina del progetto.

+0

per me funziona anche la versione di downgrade di ButterKnife a '8.1.0' –

3

Ecco la risposta di un Jake Wharton da simili StackOverflow postale:

Se si utilizza Jack:

  • omettere il 'Android-apt' plug completamente.
  • Utilizzare annotationProcessor per la dipendenza (anziché apt).

credo che devi essere utilizzando la versione 2.2.0 del Gradle Android plug se invece di 2.1.x (attualmente l'ultima è 2.2.0-a5).

La documentazione di Butter Butter verrà aggiornata per la prossima versione (8.2.0) per includere queste informazioni.

Da: Butterknife 8.1.0 not working with JDK 1.8 in Android Studio 2.1.2

Controllare anche: http://github.com/JakeWharton/butterknife/issues/616

auguriamo che contribuiscano

6

versione 8.3.0 è appena stato rilasciato con il supporto per Jack.

compile 'com.jakewharton:butterknife:8.3.0' 
annotationProcessor 'com.jakewharton:butterknife-compiler:8.3.0'