Скомпилируйте Kotlin с JavaScript

Я начал изучать Kotlin, и я бы хотел использовать его вместо TypeScript для моего языка интерфейса. Оба скомпилируются с использованием JavaScript, поэтому я хотел бы настроить его так, чтобы я сделал файл Kotlin, позвонил ему myFile.kt , а затем, когда я запустил компилятор, он сделает файл myFile.js .

Точно так же, как TypeScript принимает myFile.ts и компилирует его в myFile.js .

Я использую последнюю версию IntelliJ 15 с кандидатом 1-го выпуска Kotlin.

Я искал по всему Интернету способ сделать это, но до сих пор все, что я нашел, это настроить IntelliJ, чтобы Kotlin создавал библиотеку JavaScript из вашего кода в JAR-файле. Я также не смог получить это, чтобы скомпилировать любые файлы kt в моем проекте (они были ранее js файлами).

Это то, что я хотел бы сделать в настоящее время, или я думаю об этом не так?

Я думаю, что это должно помочь:

https://github.com/JetBrains/kotlin/blob/master/libraries/tools/kotlin-gradle-plugin/src/test/resources/testProject/kotlin2JsProject/libraryProject/build.gradle

Есть образец проекта библиотеки. Источники JS могут быть созданы в buildDir . Так что да, вы можете получить js-файлы из источников Kotlin.

Язык Kotlin очень отличается от JavaScript (даже ES6), поэтому вы не можете просто переименовать js в kt , это не сработает. Вам нужно переписать исходные файлы javascript в Kotlin.

Например:

 console.log('Hello, World!'); 

Следует переписать как:

 fun main(args: Array<String>) { println("Hello, World!") } 
Intereting Posts
Maven с Kotlin 1.2: Требуемый класс отсутствовал kotlin / reflection / KDeclarationContainer Итерирование по файлам, разбиение по шаблону : compileKotlin не работает в Gradle (смешанный проект Java + Kotlin) Как мне передать класс / класс класса Kotlin из String? Является ли формат данных, хранящихся в kotlin.MetaData документированы где угодно? Класс Котлина не найден при построении с дженкинсами Kotlinx не может разрешить символ «синтетический» notifyDataChanged () не удалось обновить данные расширяемого списка Сортировка коллекции по нескольким полям в Котлине Пользовательский тип Kotlin Generics с использованием подстановочного знака Ошибки привязки данных в прикладном модуле Почему результат функции не работает как предложение в заявлении when в Kotlin? Как я могу создать «forEach», который возвращает объект, который является приемником для функции потребления? Делегат Kotlin с MultiDex на Android ниже 21 Невозможно остановить исключение в IntelliJ IDEA при написании кода Котлина