56 lines
2.7 KiB
Markdown
56 lines
2.7 KiB
Markdown
# [Kotlin](https://kotlinlang.org/) Extension for [b<span style="color:orange">l</span>d](https://rife2.com/bld)
|
|
|
|
[](https://opensource.org/licenses/Apache-2.0)
|
|
[](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html)
|
|
[](https://kotlinlang.org)
|
|
[](https://rife2.com/bld)
|
|
[](https://repo.rife2.com/#/releases/com/uwyn/rife2/bld-kotlin)
|
|
[](https://repo.rife2.com/#/snapshots/com/uwyn/rife2/bld-kotlin)
|
|
[](https://github.com/rife2/bld-kotlin/actions/workflows/bld.yml)
|
|
|
|
To install, please refer to the [extensions](https://github.com/rife2/bld/wiki/Extensions) and [support](https://github.com/rife2/bld/wiki/Kotlin-Support)
|
|
documentation.
|
|
|
|
## Compile Kotlin Source Code
|
|
|
|
To compile the source code located in `src/main/kotlin` and `src/test/kotlin` from the current project:
|
|
|
|
```java
|
|
@BuildCommand(summary = "Compiles the Kotlin project")
|
|
public void compile() throws Exception {
|
|
new CompileKotlinOperation()
|
|
.fromProject(this)
|
|
.execute();
|
|
}
|
|
```
|
|
|
|
```console
|
|
./bld compile
|
|
```
|
|
|
|
- [View Examples Project](https://github.com/rife2/bld-kotlin/tree/main/examples/)
|
|
|
|
Please check the [Compile Operation documentation](https://rife2.github.io/bld-kotlin/rife/bld/extension/CompileKotlinOperation.html#method-summary)
|
|
for all available configuration options.
|
|
|
|
## Kotlin Compiler Requirement
|
|
|
|
Please make sure Kotlin is installed and that the `KOTLIN_HOME` environment variable is set.
|
|
|
|
You can also manually configure the Kotlin home location as follows:
|
|
|
|
```java
|
|
@BuildCommand(summary = "Compiles the Kotlin project")
|
|
public void compile() throws Exception {
|
|
new CompileKotlinOperation()
|
|
.fromProject(this)
|
|
.kotlinHome("path/to/kotlin")
|
|
.execute();
|
|
}
|
|
```
|
|
|
|
While older version of Kotlin are likely working with the extension, only version 1.9 or higher are officially supported.
|
|
|
|
## Template Project
|
|
|
|
There is also a [Template Project](https://github.com/rife2/kotlin-bld-example) with support for the [Dokka](https://github.com/rife2/bld-dokka) and [Detekt](https://github.com/rife2/bld-detekt) extensions.
|