java -version kotlin -version kotlinc -version
# kt 和 kts:kt是代码文件后缀名,kts是脚本文件后缀名 # kt 从 main() 开始 # kts 按从上到下的语句顺序直接执行,不需要 main # 手动编译单文件 # -include-runtime 把 Kotlin 运行时一起打进 jar,部署更省心 kotlinc Main.kt -include-runtime -d app.jar java -jar app.jar # 需要 JDK/JRE # 执行脚本 kotlin hello.kts
Gradle(使用SDKMAN安装):下载依赖 → 编译 → 测试 → 打包/运行
Gradle Wrapper:一套随项目一起提交的小脚本 + 配置,作用是让任何人不用先安装 Gradle,也能用指定版本的 Gradle 来构建这个项目。(是一个命名为 gradlew 的脚本,gradlew build / run)
# 方式1 # 不是创建 hi 的文件夹,而是在当前目录直接创建工程结构 # 所以还是需要自己提前创建好工程目录 gradle init --type kotlin-application --dsl kotlin --project-name hi # 方式2 # 创建一个 JVM 命令行应用 mkdir hello-kotlin && cd hello-kotlin gradle init \ --type kotlin-application \ --dsl kotlin \ --project-name hello-kotlin \ --package com.example.app # ./gradlew 会被生成(项目的根目录) chmod u+x ./gradlew ./gradlew run # 执行 ./gradlew test # 测试 ./gradlew build # 构建 ./gradlew tasks # 列出可用任务 ./gradlew dependencies # 查看依赖树 ./gradlew clean # 清理构建 # 生成可执行 JAR(普通 JAR) ./gradlew jar # 生成“胖 JAR”(包含依赖,便于部署) ./gradlew shadowJar
Kotlin/Java 世界没有 npm/pip 那样的独立“包管理器”。依赖通常由 构建工具(Gradle 或 Maven)充当包管理与解析器,从远程仓库拉取 JAR/AAR 等制品。
仓库(Registry):Maven Central(默认最大公仓,事实标准);Google Maven(Android 相关:AAR、Jetpack、Play 服务等)。
制品(Artifact)形式(包管理器下载的就是这些内容?):JAR,标准 Java/Kotlin 库;AAR,Android 库(含资源/manifest);Kotlin Multiplatform (KMP)
命名格式:group:artifact:version
例:org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0
大多数情况下,Kotlin的代码分发和Java是同一套渠道。Kotlin(面向 JVM/Android)的库和应用与 Java 一样,主要以 JAR/AAR 形式,通过 Maven 仓库(如 Maven Central、Google Maven)分发,由 Gradle/Maven 解析和下载。
Kotlin Multiplatform (KMP)是 Kotlin 特有的,也发布到 Maven 仓库,但同一坐标下带多平台变体(jvm, android, ios, js, native 等)和 Kotlin/Gradle 元数据;消费者按目标自动选对的变体。
TODO