Kotlin class NoClassDefFoundError crash

Tengo un proyecto de Android existente que usa las siguientes librerías:

  1. AutoValue
  2. Dagger2
  3. RxJava
  4. Retrolambda

Intento agregar Kotlin Support para poder migrar lentamente el proyecto a Kotlin. Esto es lo que hice.

  1. Se agregó la dependencia de Kotlin.
  2. Convirtió una de las classs en class Kt y se pasó al src/main/kotlin/..package..

  3. Se agregó kotlin en el set fuente. sourceSets {main.java.srcDirs + = 'src / main / kotlin'}

  4. Cuando hago una compilation limpia y deployment la aplicación, obtengo la exception NoClassDefFoundError. Sin embargo, si vuelvo a implementarlo, funciona bien. ¿Alguna sugerencia? No tengo ninguna anotación en la class que convertí, así que no kapt complemento kapt .

Nota: Estoy usando la última versión de Kotlin 1.0.4. También tengo la ejecución instantánea deshabilitada.

Ve a Files > Settings y apaga completamente la Instant Run , es decir, todas las casillas de verificación deben estar desmarcadas.

Limpiar y rebuild el proyecto.

Entonces debería funcionar

Editar: como dijiste que Instant está deshabilitado, con protip verifica tu configuration y actualiza Gradle y Android Studio si no estás usando la última versión.

Según este problema , puede ser útil cambiar la versión del complemento de Gradle de 2.10 a 2.14.1.

Protip: use la combinación Ctrl + Shift + A para encontrar commands como

  • Configure Kotlin in Project

  • Configure Kotlin Updates

  • Convert Java File to Kotlin

primero necesitas configurar tu estudio de android con kotlin, para esto necesitas agregar el plugin de kotlin en android studio, y luego necesitas agregar dependencies y luego convertir las classs de java a kotlin por favor mira este video.

https://www.youtube.com/watch?v=DN2EDdycZ3c

Sufre las classs de Kotlin con kt cuando las llame desde Java.

De lo contrario, agregue @file:JvmName("Utils") antes del package en la class Kotlin si debe llamarlo en Java con el nombre personalizado que desee como Utils en este caso.

Más detalles se pueden encontrar aquí

  • Complemento de estudio Android con id: 'kotlin-android-extensions'
  • En kotlin, cómo devolver una instancia definida por un parámetro de class genérico
  • ¿Hay alguna diferencia entre "object receptor" y "receptor de extensión"
  • Cómo organizar los methods de extensión de Kotlin
  • Kotlin crea problemas con Android
  • Acceso a la function de extensión de Kotlin Campo privado de Java
  • While loop en el lenguaje de progtwigción Kotlin
  • Método de extensión de Kotlin como alias para el nombre de método largo?
  • Choque de extensión Kotlin
  • acceso al método de extensión kotlin en otro kt
  • Crear nueva instancia de object Kotlin