12.1.2 Kotlin 命令行编译器
3 分钟阅读
12.1.2 Kotlin 命令行编译器
每个 Kotlin 版本都会附带一个独立版本的编译器。你可以手动下载最新版本,也可以通过包管理器安装。
注意: 安装命令行编译器并不是使用 Kotlin 的必要步骤。常见的做法是使用带有官方 Kotlin 支持的 IDE 或代码编辑器(例如 IntelliJ IDEA 或 Android Studio)来编写 Kotlin 应用。它们开箱即用地提供完整的 Kotlin 支持。了解如何在 IDE 中开始使用 Kotlin。
安装编译器
手动安装
要手动安装 Kotlin 编译器:
- 从 GitHub Releases 下载最新版本(
kotlin-compiler-2.4.20.zip)。 - 把独立编译器解压到某个目录,并可选地把
kotlinc/bin目录添加到系统路径中。bin目录包含在 Windows、macOS 和 Linux 上编译和运行 Kotlin 所需的脚本。
注意: 如果你想在 Windows 上使用 Kotlin 命令行编译器,我们建议手动安装。
SDKMAN!
在基于 UNIX 的系统(例如 macOS、Linux、Cygwin、FreeBSD 和 Solaris)上,更简单的 Kotlin 安装方式是 SDKMAN!。它也能在 Bash 和 ZSH shell 中工作。了解如何安装 SDKMAN!。
要通过 SDKMAN! 安装 Kotlin 编译器,请在终端中运行以下命令:
| |
Homebrew
或者,在 macOS 上你可以通过 Homebrew 安装编译器:
| |
Snap 包
如果你在 Ubuntu 16.04 或更高版本上使用 Snap,可以从命令行安装编译器:
| |
创建并运行应用
- 用 Kotlin 创建一个显示
"Hello, World!"的简单控制台 JVM 应用。在代码编辑器中创建一个名为hello.kt的新文件,内容如下:
| |
- 用 Kotlin 编译器编译该应用:
| |
-d选项指定生成的 class 文件的输出路径,它可以是目录,也可以是 .jar 文件。-include-runtime选项会把 Kotlin 运行时库包含进去,使生成的 .jar 文件自包含并可运行。
要查看所有可用选项,请运行:
| |
- 运行该应用:
| |
注意: 要编译 Kotlin/Native 应用,请使用 Kotlin/Native 编译器。
编译库
如果你在开发供其他 Kotlin 应用使用的库,可以在不包含 Kotlin 运行时的情况下构建 .jar 文件:
| |
由于以这种方式编译的二进制文件依赖 Kotlin 运行时,你应当确保在使用编译后的库时,classpath 中存在 Kotlin 运行时。
你也可以使用 kotlinr 脚本来运行由 Kotlin 编译器生成的二进制文件:
| |
HelloKt 是 Kotlin 编译器为名为 hello.kt 的文件生成的主类名。
注意: 要编译 Kotlin/Native 库,请使用 Kotlin/Native 编译器。
运行 REPL
使用 -Xrepl 编译器选项运行编译器即可获得交互式 shell。在这个 shell 中,你可以输入任何合法的 Kotlin 代码并查看结果。
运行脚本
你可以把 Kotlin 当作脚本语言使用。Kotlin 脚本是包含顶层可执行代码的 Kotlin 源文件(.kts)。
| |
要运行脚本,请把 -script 选项和对应的脚本文件传给编译器:
| |
Kotlin 对脚本定制提供了实验性支持,例如添加外部属性、提供静态或动态依赖等等。定制由所谓的脚本定义来定义——即带有适当支持代码的、加了注解的 Kotlin 类。脚本的文件扩展名用于选择合适的定义。进一步了解 Kotlin 自定义脚本。
当相应的 jar 被包含在编译 classpath 中时,准备妥当的脚本定义会被自动检测并应用。或者,你也可以通过向编译器传入 -script-templates 选项来手动指定定义:
| |
更多细节请参阅 KEEP-75。