Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

363
Vistas
Cómo compilar código Kotlin en jvmTarget="1.8" para pruebas

En nuestro proyecto de Android codificamos en Kotlin y apuntamos a Java 1.6. Sin embargo, nos vemos obligados a Java 1.8 en nuestra prueba, ya que algunas funciones de JUnit5 lo requieren (métodos estáticos en las interfaces).

¿Es posible compilar las pruebas de manera diferente al código de producción?

Intentamos elevar jvmTarget a 1.8 agregando esto a nuestro build.gradle:

 tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all { kotlinOptions { jvmTarget = "1.8" } }

Esto también eleva el jvmTarget del código de producción, pero solo lo queremos para nuestras pruebas. Los Docs indican que se puede especificar para la prueba así:

 compileReleaseUnitTestKotlin{ kotlinOptions { jvmTarget = "1.8" } }

Desafortunadamente, build.gradle no se compila.

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Los documentos de Kotlin mencionan cómo hacerlo solo para pruebas.

ADSL maravilloso:

 compileTestKotlin { kotlinOptions.jvmTarget = "1.8" }

ADSL de Kotlin:

 import org.jetbrains.kotlin.gradle.tasks.KotlinCompile val compileTestKotlin: KotlinCompile by tasks compileTestKotlin.kotlinOptions.jvmTarget = "1.8"
over 4 years ago · Santiago Trujillo Denunciar

0

Este fragmento hace el trabajo por mí:

 tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile) { if (it.name.contains("UnitTest")) { kotlinOptions { jvmTarget = "1.8" } } }

Debo decir que no es la mejor solución para filtrar las tareas de prueba en función de sus nombres, así que piense en esto como una ayuda rápida y sucia.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda