# 为你的 Maven 项目配置 Kotlin 编译器 `kotlin-maven-plugin` 允许你为 Maven 项目配置 Kotlin 编译器. 你可以指定编译器选项, 选择执行策略, 并启用增量编译. ## 指定编译器选项 你可以在 Kotlin Maven plugin 节点的 `` 部分, 以元素的形式指定编译器的额外选项和参数: ```XML org.jetbrains.kotlin kotlin-maven-plugin ${kotlin.version} true ... true -Xjsr305=strict ... ``` 很多选项也可以通过属性来配置: ```XML 2.4 ``` 支持以下属性: ### JVM 专用属性 | 名称 | 属性名称 | 说明 | 可选的值 | 默认值 | | --- | --- | --- | --- | --- | | `nowarn` | | 不生成警告 | true, false | false | | `languageVersion` | `kotlin.compiler.languageVersion` | 控制编译期间能够使用哪些 Kotlin 语言功能特性和语法. 详情请参见 [-language-version](compiler-reference.html#language-version-version). | "2.0", "2.1", "2.2", "2.3", "2.4", "2.5" (试验性功能) | | | `apiVersion` | `kotlin.compiler.apiVersion` | 控制你的代码能够使用哪些 Kotlin API. 详情请参见 [-api-version](compiler-reference.html#api-version-version). | "2.0", "2.1", "2.2", "2.3", "2.4", "2.5" (试验性功能) | | | `sourceDirs` | | 包含需要编译的源代码文件的目录 | | 项目的源代码根目录 | | `compilerPlugins` | | 启用的编译器 plugin | | [] | | `pluginOptions` | | 编译器 plugin 的选项 | | [] | | `args` | | 额外的编译器参数 | | [] | | `jvmTarget` | `kotlin.compiler.jvmTarget` | 生成的字节码的目标 JVM 版本. 只控制输出的字节码版本, 不限制你的代码可以使用哪些 JDK API. | "1.8", "9", "10", ..., "26" | "1.8" | | `jdkRelease` | `kotlin.compiler.jdkRelease` | 目标 JVM 版本. 控制字节码版本, 并将可用的 API 限制为指定的 JDK 版本, 防止意外使用更新的 API. 等同于 Java 的 `--release` 编译器选项. | "1.8", "9", "10", ..., "26" | | | `jdkHome` | `kotlin.compiler.jdkHome` | 将指定位置的自定义 JDK 添加到 classpath 中, 替换默认的 `JAVA_HOME` | | | | `jdkToolchain` | `kotlin.compiler.jdkToolchain` | 设置工具链中要使用的 JDK 版本. 只影响 Kotlin 编译 | | ## 选择执行策略 默认情况下, Maven 使用 Kotlin Daemon 编译器执行策略. 要切换到 "in process" 策略, 请在你的 `pom.xml` 文件中设置以下属性: ```XML false ``` 关于不同执行策略的更多信息, 请参见 [编译器执行策略](compiler-execution-strategy.html). ## 启用增量编译 为了加快构建速度, 你可以添加 `kotlin.compiler.incremental` 属性, 启用增量编译: ```XML true ``` 或者, 也可以使用 `-Dkotlin.compiler.incremental=true` 选项来运行构建. ## 下一步做什么? [打包你的项目](maven-compile-package.html)