Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

359
Views
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 answers
Answer question

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 Report

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!