现在位置: 首页 > Kotlin 教程 > 正文

Kotlin 环境搭建

写 Kotlin 代码之前,需要先准备一个能编译和运行它的环境。

本文介绍五种常见方式,从最省事的在线运行到正式项目的 Gradle、Maven 与 Android Studio 配置。


五种运行方式对比

不同方式适合不同阶段,先看一张对比表再决定从哪里开始。

方式安装成本适用场景是否推荐长期使用
在线运行无需安装学习语法、验证小段代码
IntelliJ IDEA安装 IDE 与 JDK本地学习、调试、阅读源码
命令行 kotlinc安装编译器理解编译过程、写小脚本视情况
Gradle安装 JDK 即可正式 Kotlin/JVM 项目
Maven安装 JDK 即可已有 Maven 体系的项目
Android Studio安装 IDE 与 SDKAndroid 应用开发

Kotlin 编译运行流程图:hello.kt 经 kotlinc 编译成 hello.jar,再由 java -jar 运行输出 Hello, World!;Gradle 或 Maven 是可选的另一条产出路径

注意:Kotlin 2.2 要求 JDK 8 及以上。旧教程里写的「JDK 1.6」早已不受支持,按那个版本配置会直接报错。


在线运行

如果只想马上试一行代码,在线工具是最快的方式,连 JDK 都不用装。

官方 Playground 地址是 play.kotlinlang.org,打开就能编辑并运行。

把下面的代码粘贴进去,点击 Run 即可看到输出。

实例

// 在线运行的最小示例
fun main() {
    val siteName = "菜鸟教程"                  // 声明不可变变量
    println("Hello, $siteName!")               // 字符串模板
    println("网址:www.runoob.com")
}

输出结果如下。

Hello, 菜鸟教程!
网址:www.runoob.com

菜鸟教程的在线工具同样可以运行 Kotlin,适合边看教程边验证代码。

在线工具的缺点是没法安装依赖、不能调试,只适合做语法练习。


IntelliJ IDEA

本地学习最推荐 IntelliJ IDEA,它是 JetBrains 自家的 IDE,对 Kotlin 的支持最完整。

下载 Community 社区版即可,个人学习完全免费,功能足够日常使用。

下载地址:https://www.jetbrains.com/idea/download/

使用说明:https://www.runoob.com/kotlin/kotlin-setup.html

安装完成后按下面的步骤新建项目。

第一步,打开 IDEA,点击 New Project,在左侧语言列表中选择 Kotlin。

第二步,填写项目名称,例如 kotlin-demo,并确认 Build system 选择 IntelliJ。

第三步,选择 JDK 版本。JDK 8 及以上都可以,建议使用 JDK 17 或 JDK 21 这类长期支持版本。

第四步,在 src/main/kotlin 目录上右键,新建 Kotlin 文件 Main.kt,写入代码后点击行号旁的绿色三角运行。

实例

// 文件路径:src/main/kotlin/Main.kt
fun main() {
    val url = "www.runoob.com"
    println("项目创建成功,目标站点:$url")
}

控制台会输出下面这一行。

项目创建成功,目标站点:www.runoob.com

IDEA 的 Kotlin 插件已内置,无需单独安装,新建 Kotlin 文件后会自动识别语法。

提示:如果新建项目时提示找不到 JDK,到 File 菜单下的 Project Structure 里指定本机 JDK 的安装目录即可。


Gradle 项目

Gradle 是目前 Kotlin/JVM 项目最主流的构建工具,只需要一个配置文件就能拉齐依赖与编译任务。

Kotlin 2.2 使用 Kotlin DSL 编写构建脚本,文件名为 build.gradle.kts

实例

// 文件路径:build.gradle.kts
plugins {
    kotlin("jvm") version "2.2.0"      // Kotlin/JVM 插件,版本号需与编译器一致
    application                        // 提供 run 任务,方便直接运行程序
}

group = "com.runoob"                   // 项目组名,通常用反写的域名
version = "1.0.0"                      // 项目版本号

repositories {
    mavenCentral()                     // 从 Maven 中央仓库下载依赖
}

dependencies {
    testImplementation(kotlin("test")) // 引入 Kotlin 官方测试库
}

application {
    // 主类名由「文件名 + Kt」构成,Main.kt 对应 MainKt
    mainClass.set("com.runoob.MainKt")
}

kotlin {
    // 指定编译使用的 JDK 版本,本机没装时 Gradle 会尝试自动下载
    jvmToolchain(17)
}

再补一个 settings.gradle.kts,声明项目名,Gradle 才能正确识别根项目。

实例

// 文件路径:settings.gradle.kts
rootProject.name = "kotlin-demo"       // 根项目名称

推荐的标准目录结构如下,源码统一放在 src/main/kotlin 下。

kotlin-demo/
├── build.gradle.kts
├── settings.gradle.kts
└── src
    └── main
        └── kotlin
            └── com
                └── runoob
                    └── Main.kt

主类文件内容如下,注意包名要和目录结构一致。

实例

// 文件路径:src/main/kotlin/com/runoob/Main.kt
package com.runoob                    // 包声明,需与目录结构对应

fun main() {
    println("Hello, Runoob!")
    println("教程站点:www.runoob.com")
}

在项目根目录执行下面的命令,Gradle 会自动下载依赖、编译并运行。

$ ./gradlew run

> Task :run
Hello, Runoob!
教程站点:www.runoob.com

BUILD SUCCESSFUL in 3s

Windows 下把 ./gradlew 换成 gradlew.bat 即可。


Maven 项目

如果团队已有 Maven 体系,也可以用 Maven 构建 Kotlin 项目,核心是引入 kotlin-maven-plugin。

在项目根目录创建 pom.xml,内容如下。

实例

<!-- 文件路径:pom.xml -->
<project xmlns="http://maven.apache.org/POM/4.0.0"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
                            http://maven.apache.org/xsd/maven-4.0.0.xsd">


    <modelVersion>4.0.0</modelVersion>
    <groupId>com.runoob</groupId>              <!-- 组织标识 -->
    <artifactId>kotlin-demo</artifactId>       <!-- 项目名 -->
    <version>1.0.0</version>                   <!-- 版本号 -->

    <properties>
        <kotlin.version>2.2.0</kotlin.version>
        <maven.compiler.release>8</maven.compiler.release>   <!-- 目标字节码版本 -->
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <dependencies>
        <!-- Kotlin 标准库,编译和运行都需要 -->
        <dependency>
            <groupId>org.jetbrains.kotlin</groupId>
            <artifactId>kotlin-stdlib</artifactId>
            <version>${kotlin.version}</version>
        </dependency>
    </dependencies>

    <build>
        <!-- Kotlin 源码目录,Maven 默认的 java 目录不适用 -->
        <sourceDirectory>src/main/kotlin</sourceDirectory>
        <plugins>
            <plugin>
                <groupId>org.jetbrains.kotlin</groupId>
                <artifactId>kotlin-maven-plugin</artifactId>
                <version>${kotlin.version}</version>
                <executions>
                    <execution>
                        <id>compile</id>
                        <phase>compile</phase>            <!-- 绑定到 compile 阶段 -->
                        <goals>
                            <goal>compile</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>

源码放在 src/main/kotlin/com/runoob/Main.kt,执行下面的命令编译并运行。

$ mvn compile
$ mvn exec:java -Dexec.mainClass=com.runoob.MainKt

Hello, Runoob!
教程站点:www.runoob.com

如果使用 exec:java 报错,需要在 pom.xml 里额外配置 exec-maven-plugin 插件。


Android Studio

Android Studio 基于 IntelliJ IDEA,内置 Kotlin 支持,是开发 Android 应用的标准工具。

新建项目时选择 Empty Activity 模板,向导会自动生成 Kotlin DSL 的构建脚本。

现代写法使用 plugins { } 块声明插件,旧版的 Groovy 写法已经过时。

实例

// 文件路径:app/build.gradle.kts(Android 应用模块)
plugins {
    id("com.android.application")            // Android 应用插件
    id("org.jetbrains.kotlin.android")       // Kotlin 对 Android 的支持
}

android {
    namespace = "com.runoob.demo"            // 包命名空间
    compileSdk = 35                          // 编译时使用的 Android SDK 版本

    defaultConfig {
        applicationId = "com.runoob.demo"    // 应用唯一标识
        minSdk = 21                          // 最低支持的 Android 版本
        targetSdk = 35                       // 目标 Android 版本
        versionCode = 1                      // 内部版本号,只能是整数
        versionName = "1.0"                  // 对外展示的版本名
    }
}

对应的 Gradle 插件版本在项目根目录的 build.gradle.kts 中统一声明。

实例

// 文件路径:build.gradle.kts(项目根目录)
plugins {
    id("com.android.application") version "8.7.0" apply false          // 仅声明版本,不在根项目应用
    id("org.jetbrains.kotlin.android") version "2.2.0" apply false     // Kotlin 插件版本
}

注意:旧资料里的 apply plugin: 'kotlin-android' 是 Groovy 写法,现在依然能跑但已不推荐,新项目请统一使用 Kotlin DSL 的 plugins { } 块。


Eclipse

Kotlin 官方早已停止维护 Eclipse 插件,不建议在新项目中使用。

Kotlin Eclipse 环境搭建:https://www.runoob.com/kotlin/kotlin-eclipse-setup.html

提示:如果你正在用 Eclipse,可以换成 IntelliJ IDEA 社区版或 Android Studio,两者都免费且开箱支持 Kotlin。


常见问题

下面几个问题是环境搭建阶段最常遇到的。

提示 Unsupported class file major version

这是 JDK 版本与 Gradle 或 Kotlin 插件版本不匹配导致的。

先确认 java -version 输出的版本不低于 8,再检查 Gradle 版本是否支持该 JDK。

Gradle 下载依赖很慢

国内网络访问 Maven 中央仓库较慢时,可以在 build.gradle.kts 的 repositories 块中追加国内镜像仓库。

IDEA 提示 Kotlin 插件版本过低

在 Settings 的 Plugins 页面搜索 Kotlin,点击 Update 升级到与编译器一致的版本。

中文输出乱码

确认源文件使用 UTF-8 编码,并在 Gradle 中设置 tasks.withType<JavaCompile> { options.encoding = "UTF-8" }