Kotlin/Js Kotlin 编译为 JS (尝试)

Kotlin/JS 是 Kotlin 编程语言的一个目标平台,它允许你使用 Kotlin 编写在 JavaScript 环境中运行的代码。通过 Kotlin/JS,你可以将你的 Kotlin 代码编译成 JavaScript 代码,通常是兼容 ECMAScript 5 或更高版本的形式。这使得 Kotlin 不仅可以用于服务端(通过 Kotlin/JVM)和 Android 应用开发,还可以用来编写前端代码。

Kotlin/JS 项目使用 Gradle 作为构建系统。还可以使用 npmyarn 进行包管理。使用 webpack 完成 js构建

本篇文章仅仅浅浅的对这个功能尝试。

如果想要更多信息请查阅官方文档:点我跳转

1. 引入插件

kotlin 复制代码
plugins {
    kotlin("multiplatform") version "2.1.10"
}

2. 设置编译选项

在 Gradle 中,可以使用 kotlin{...} 来进行管理和设置各项内容

kotlin 复制代码
kotlin {
	js(IR) {
        // 输出模块名称
        moduleName = "main"
        // 设置package.json
        compilations["main"].packageJson {
            customField("scripts", mapOf("babel" to "babel kotlin -d kotlin_babel", "build" to "webpack"))
        }
//        generateTypeScriptDefinitions() // 生成 TypeScript 声明文件 (d.ts)
//        useEsModules() // 使用 ES 模块,使用后输出 mjs 文件。
        nodejs {
            testTask {
                // 是否启用测试
                enabled = true
            }
        }
        binaries.executable()
    }
}

3. 编写测试代码

kotlin 复制代码
fun main(){
	println("Hello Kotlin/Js")
}

4. 运行

shell 复制代码
./gradlew jsRun
相关推荐
FQNmxDG4S13 小时前
Java多线程编程:Thread与Runnable的并发控制
java·开发语言
前端老石人13 小时前
HTML 字符引用完全指南
开发语言·前端·html
matlab_xiaowang13 小时前
Redux 入门:JavaScript 可预测状态管理库
开发语言·javascript·其他·ecmascript
虹科网络安全13 小时前
艾体宝干货|数据复制详解:类型、原理与适用场景
java·开发语言·数据库
axng pmje14 小时前
Java语法进阶
java·开发语言·jvm
老前端的功夫14 小时前
【Java从入门到入土】28:Stream API:告别for循环的新时代
java·开发语言·python
qq_4352879214 小时前
第9章 夸父逐日与后羿射日:死循环与进程终止?十个太阳同时值班的并行冲突
java·开发语言·git·死循环·进程终止·并行冲突·夸父逐日
止语Lab14 小时前
从手动到框架:Go DI 演进的三个拐点
开发语言·后端·golang
yaoxin52112314 小时前
397. Java 文件操作基础 - 创建常规文件与临时文件
java·开发语言·python
小短腿的代码世界15 小时前
Qt日志系统深度解析:从qDebug到企业级日志框架
开发语言·qt