J'ai un fichier source Kotlin, mais je veux le traduire en Java.
Comment convertir Kotlin en source Java?
java
kotlin
code-conversion
activedecay
la source
la source
Réponses:
Comme l'a dit @Vadzim, dans IntelliJ ou Android Studio, il vous suffit de faire ce qui suit pour obtenir le code java de kotlin:
Menu > Tools > Kotlin > Show Kotlin Bytecode
Decompile
boutonMise à jour:
Avec une version récente (1.2+) du plugin Kotlin, vous pouvez également le faire directement
Menu > Tools > Kotlin -> Decompile Kotlin to Java
.la source
Decompile Kotlin to Java
n'est actuellement activé que pour les classes Kotlin compilées .Vous pouvez compiler Kotlin en bytecode, puis utiliser un désassembleur Java.
La décompilation peut être effectuée dans IntelliJ Idea, ou en utilisant FernFlower https://github.com/fesh0r/fernflower (merci @Jire)
Il n'y avait pas d'outil automatisé car j'ai vérifié il y a quelques mois (et aucun plan pour un AFAIK)
la source
vous pouvez aller dans Outils> Kotlin> Afficher le bytecode kotlin
la source
Appuyez sur Cmd- Shift- Asur un Mac, ou appuyez sur Ctrl- Shift- Asur une machine Windows.
Tapez l'action que vous recherchez:
Kotlin Bytecode
et choisissezShow Kotlin Bytecode
dans le menu.Decompile
sur le bouton en haut duKotlin Bytecode
panneau.la source
Je compile Kotlin en code octet puis décompile cela en Java. Je compile avec le compilateur Kotlin et décompile avec cfr .
Mon projet est ici .
Cela me permet de compiler ceci:
Pour ça:
la source
Comme @ louis-cad l'a mentionné, "la source Kotlin -> le code d'octet Java -> la source Java" est la seule solution à ce jour.
Mais je voudrais mentionner la voie que je préfère: utiliser le décompilateur Jadx pour Android .
Il permet de voir le code généré pour les fermetures et, comme pour moi, le code résultant est "plus propre" que celui du décompilateur IntelliJ IDEA.
Normalement, quand j'ai besoin de voir le code source Java de n'importe quelle classe Kotlin, je le fais:
./gradlew assembleDebug
jadx-gui ./app/build/outputs/apk/debug/app-debug.apk
Dans cette interface graphique de base, la fonctionnalité IDE fonctionne: recherche de classe, déclaration click to go. etc.
De plus, tout le code source pourrait être enregistré puis visualisé à l'aide d'autres outils comme IntelliJ IDEA.
la source
brew install jadx
la source
Java et Kotlin s'exécutent sur Java Virtual Machine (JVM).
La conversion d'un fichier Kotlin en fichier Java implique deux étapes, à savoir la compilation du code Kotlin en bytecode JVM puis décompiler le bytecode en code Java.
Étapes pour convertir votre fichier source Kotlin en fichier source Java:
la source