Mam plik źródłowy Kotlin, ale chcę przetłumaczyć go na język Java.Jak przekonwertować źródłowy plik kotlin do pliku źródłowego java
Jak mogę przekonwertować źródło Kotlin na Java?
Mam plik źródłowy Kotlin, ale chcę przetłumaczyć go na język Java.Jak przekonwertować źródłowy plik kotlin do pliku źródłowego java
Jak mogę przekonwertować źródło Kotlin na Java?
jak powiedział @Vadzim w IntelliJ lub Android Studio, wystarczy wykonać następujące czynności, aby uzyskać kod java z Kotlin:
Decompile
Niestety od teraz (lipiec 2017) nie spowoduje to dekompilacji klas utworzonych jako zamknięcia dla wyrażeń lambda. – csharpfolk
Czy wyjście Java nie jest brzydkie? – Pacerier
@Pacerier Tak jak w przypadku większości dekompilacji, jest to oczywiście –
Można skompilować Kotlin na kod bajtowy, a następnie użyć dezasemblera Java.
decompiling mogą być wykonywane wewnątrz InteliJ pomysłu, lub za pomocą FernFlower https://github.com/fesh0r/fernflower (dzięki @Jire)
Nie było zautomatyzowane narzędzie jak sprawdziłem kilka miesięcy temu (i nie ma planów dla jednej AFAIK)
Na marginesie pamiętaj, że generics w wygenerowanym kodzie może powodować ostrzeżenia kompilatora, ponieważ Kotlin zezwala na pewne rzeczy, których kompilator java nie ma. Nadal działa w kodzie bajtowym. –
@JacobZimmerman Wow, nigdy o tym nie słyszałem. Kilka przykładów? – voddan
@voddan Myślę, że on odnosi się do reifikowanych leków generycznych, które nie są możliwe w czystej Jawie. – Jire
W Android Studio, wystarczy wykonać następujące czynności, aby uzyskać kod Java kodu bajtowego:
Wyświetl Bytecode: Narzędzia -> Kotlin -> Pokaż Kotlin kodu bajtowego Albo cmd + shift + a (Mac)/CTRL + sHIFT + a (Windows) i wpisz kod bajtowy „Kotlin”
Uwaga: dekompilacji przycisk jest dostępny tylko wtedy, gdy masz Insta lled i włączony plugin „Java Decompiler Bytecode”
java kodu bajtowego:
jestem całkiem pewny, nie zautomatyzowane narzędzie zostało zbudowane do tego jeszcze. Możesz go zbudować jako pierwszy! –
Może być łatwiej nauczyć je czytać Kotlin –
hah! W pełni się zgadzam; kotlin to radość pisania i czytania. Szczerze mówiąc, chcę mieć sposób na konwersję kotlin, aby móc sprawdzić w naszym repozytorium java, nie wprowadzając "domniemanego ciężaru uczenia się nowego języka" na moich rówieśników. Aby poprawić potencjalne odpowiedzi, usuwam wzmiankę o osobach z tego pytania. Tu nie chodzi o nauczanie, chodzi o konwersję kodu źródłowego. – activedecay