para entre diferencias java kotlin code-conversion

para - diferencias entre java y kotlin



Cómo convertir un archivo fuente kotlin en un archivo fuente java (7)

Para convertir un archivo fuente Kotlin en un archivo fuente Java , debe hacerlo (cuando está en Android Studio):

  1. Presione Cmd - Shift - A en una Mac, o presione Ctrl - Shift - A en una máquina con Windows.

  2. Escriba la acción que está buscando: Kotlin Bytecode y elija Show Kotlin Bytecode del menú.

  1. Presione el botón Decompile en la parte superior del panel Kotlin Bytecode .

  1. Ahora obtienes un archivo Java descompilado junto con el archivo Kotlin en una pestaña adyacente:

Espero que esto ayude.

Tengo un archivo fuente de Kotlin, pero quiero traducirlo a Java.

¿Cómo puedo convertir Kotlin a fuente Java?


  1. Abra el archivo Kotlin en Android Studio
  2. ir a herramientas -> kotlin -> kotlin bytecode
  3. en la nueva ventana que se abre al lado de su archivo kotlin, haga clic en el botón descompilar. creará el equivalente java de su archivo kotlin.

Como @ louis-cad mencionó, "la fuente de Kotlin -> el código de bytes de Java -> la fuente de Java" es la única solución hasta ahora.

Pero me gustaría mencionar la forma, que prefiero: usar el descompilador Jadx para Android .

Permite ver el código generado para los cierres y, para mí, el código resultante es "más limpio" que uno del descompilador IntelliJ IDEA.

Normalmente cuando necesito ver el código fuente de Java de cualquier clase de Kotlin que hago:

  • Generar apk: ./gradlew assembleDebug
  • Abra apk usando Jadx GUI: jadx-gui ./app/build/outputs/apk/debug/app-debug.apk

En esta GUI, la funcionalidad IDE básica funciona: búsqueda de clases, haga clic para ir a la declaración. etc.

Además, todo el código fuente podría guardarse y luego visualizarse utilizando otras herramientas como IntelliJ IDEA.


Como dijo @Vadzim, en IntelliJ o Android Studio, solo tiene que hacer lo siguiente para obtener el código java de kotlin:

  1. Menu > Tools > Kotlin > Show Kotlin Bytecode
  2. Haga clic en el botón Decompile
  3. Copia el código de Java

Actualizar:

Con una versión reciente (1.2+) del complemento Kotlin, también puede hacer directamente Menu > Tools > Kotlin -> Decompile Kotlin to Java .


Compilo Kotlin para codificar en bytes y luego descompilo eso en Java. Compilo con el compilador de Kotlin y descompilo con cfr .

Mi proyecto esta here .

Esto me permite compilar esto:

package functionsiiiandiiilambdas.functions.p01tailiiirecursive tailrec fun findFixPoint(x: Double = 1.0): Double = if (x == Math.cos(x)) x else findFixPoint(Math.cos(x))

A esto:

package functionsiiiandiiilambdas.functions.p01tailiiirecursive; public final class ExampleKt { public static final double findFixPoint(double x) { while (x != Math.cos(x)) { x = Math.cos(x); } return x; } public static /* bridge */ /* synthetic */ double findFixPoint$default( double d, int n, Object object) { if ((n & 1) != 0) { d = 1.0; } return ExampleKt.findFixPoint(d); } }


Puede compilar Kotlin para bytecode, luego usar un desensamblador Java.

El descompilación se puede hacer dentro de IntelliJ Idea, o usando FernFlower https://github.com/fesh0r/fernflower (gracias @Jire)

No había una herramienta automatizada como lo comprobé hace un par de meses (y no hay planes para un AFAIK)


puedes ir a Herramientas> Kotlin> Mostrar bytecode de kotlin