-
Notifications
You must be signed in to change notification settings - Fork 16
Kotlin Support
Kotlin is supported via Extensions.
Be sure to satisfy the Kotlin compiler requirement.
The quickest way to create a bld project with Kotlin support is by using the Kotlin Example Project for bld template on GitHub.

The template has built-in support for Kotlin, Dokka and Detekt.
To create a new project:
bld create-libYou'll be asked for some configuration options, use something like:
❯ bld create-lib
Please enter a package name (for instance: com.example):
com.example
Please enter a project name (for instance: my-app):
MyKotlinExample
Please enter the base name for generated project classes (default: MyKotlinExample):
MyKotlinExample
Downloading finished successfully.
The project was successfully created at '/tmp/MyKotlinExample'.Install the Kotlin Extension
First, go to the new project directory:
cd MyKotlinExampleThen, edit the lib/bld/bld-wrapper.properties file by changing:
bld.extensions=
bld.repositories=MAVEN_CENTRAL,RIFE2_RELEASESto:
bld.extensions=com.uwyn.rife2:bld-kotlin:1.1.0
bld.repositories=MAVEN_CENTRAL,RIFE2_RELEASES,RIFE2_SNAPSHOTSAnd finally, download the extension and dependencies:
./bld downloadmkdir src/{main,test}/kotlinOpen the project in IntelliJ IDEA (or Visual Studio Code)
Make sure the compile command is using the extension by adding the following to the src/bld/java/com/example/MyKotlinExampleBuild.java build file, right before the main method:
@BuildCommand(summary = "Compiles the Kotlin project")
@Override
public void compile() throws IOException {
// The source code located in src/main/kotlin and src/test/kotlin will be compiled
new CompileKotlinOperation()
.fromProject(this)
.execute();
}Include the standard repositories and Kotlin standard library dependency within the build file ExampleBuild method:
repositories = List.of(MAVEN_CENTRAL, RIFE2_RELEASES);
final var kotlin = version(2, 2, 0);
scope(compile).include(dependency("org.jetbrains.kotlin", "kotlin-stdlib", kotlin));and download again:

In IDEA, select File > Project Structure > Project Settings > Modules and add the src/main/kotlin and src/test/kotlin directories:

You are done. The project will compile everything located in the src/main/kotlin and src/test/kotlin directories.
Open the terminal pane and type:

For example, to convert the main example source to Kotlin:
- Create a
MyKotlinExampleLib.ktfile insrc/main/kotlin - Copy the content of the
src/main/java/com/example/MyKotlinExampleLib.javaand paste in the new Kotlin file - IDEA will ask you to convert it, do so.
- Delete the Java file that was just converted.
The same process can be used to copy the test example source.
Do not use the IDEA option to convert a class to Kotlin, as it will mess up the project.
Using JUnit (Optional)
In order to use JUnit for tests, remove the following line from the Build file:
testOperation().mainClass("com.example.MyKotlinExampleTest");and add the JUnit test dependencies:
scope(test)
.include(dependency("org.jetbrains.kotlin", "kotlin-test-junit5", kotlin))
.include(dependency("org.junit.jupiter", "junit-jupiter", version(5, 13, 2)))
.include(dependency("org.junit.platform", "junit-platform-console-standalone", version(1, 13, 2)))
.include(dependency("org.junit.platform", "junit-platform-launcher", version(1, 13, 2)));Next learn more about JDK Tools