Technology Encyclopedia Home >How to compile and package Kotlin code?

How to compile and package Kotlin code?

To compile and package Kotlin code, you typically use the Kotlin compiler, kotlinc, along with a build tool like Gradle or Maven. Here’s a basic overview of the process:

Using Gradle

  1. Set Up a Gradle Project: Create a new directory for your project and inside that directory, create a build.gradle.kts file (for Kotlin DSL) or build.gradle (for Groovy DSL).

  2. Configure the Build File: Specify the Kotlin plugin and dependencies in your build file.

    plugins {
        kotlin("jvm") version "1.5.31"
    }
    
    repositories {
        mavenCentral()
    }
    
    dependencies {
        implementation(kotlin("stdlib-jdk8"))
    }
    
    tasks {
        val jar by creating(Jar::class) {
            archiveBaseName.set("my-kotlin-app")
            from(sourceSets.main.get().output)
            manifest {
                attributes["Main-Class"] = "com.example.MainKt"
            }
        }
    }
    
  3. Write Your Kotlin Code: Create your Kotlin source files in the src/main/kotlin directory.

  4. Build the Project: Run the following command in your terminal to compile and package your Kotlin code into a JAR file.

    ./gradlew jar
    

    The resulting JAR file will be located in the build/libs directory.

Using Maven

  1. Set Up a Maven Project: Create a new directory for your project and inside that directory, create a pom.xml file.

  2. Configure the POM File: Specify the Kotlin plugin and dependencies in your 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.example</groupId>
        <artifactId>my-kotlin-app</artifactId>
        <version>1.0-SNAPSHOT</version>
        <properties>
            <kotlin.version>1.5.31</kotlin.version>
        </properties>
        <dependencies>
            <dependency>
                <groupId>org.jetbrains.kotlin</groupId>
                <artifactId>kotlin-stdlib-jdk8</artifactId>
                <version>${kotlin.version}</version>
            </dependency>
        </dependencies>
        <build>
            <sourceDirectory>src/main/kotlin</sourceDirectory>
            <testSourceDirectory>src/test/kotlin</testSourceDirectory>
            <plugins>
                <plugin>
                    <groupId>org.jetbrains.kotlin</groupId>
                    <artifactId>kotlin-maven-plugin</artifactId>
                    <version>${kotlin.version}</version>
                    <executions>
                        <execution>
                            <id>compile</id>
                            <phase>compile</phase>
                            <goals>
                                <goal>compile</goal>
                            </goals>
                        </execution>
                        <execution>
                            <id>test-compile</id>
                            <phase>test-compile</phase>
                            <goals>
                                <goal>test-compile</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-jar-plugin</artifactId>
                    <version>3.2.0</version>
                    <configuration>
                        <archive>
                            <manifest>
                                <mainClass>com.example.MainKt</mainClass>
                            </manifest>
                        </archive>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    </project>
    
  3. Write Your Kotlin Code: Create your Kotlin source files in the src/main/kotlin directory.

  4. Build the Project: Run the following command in your terminal to compile and package your Kotlin code into a JAR file.

    mvn clean package
    

    The resulting JAR file will be located in the target directory.

Example

Assume you have a simple Kotlin file Main.kt:

package com.example

fun main(args: Array<String>) {
    println("Hello, Kotlin!")
}

Using the Gradle setup described above, after running ./gradlew jar, you would get a JAR file that you can run with:

java -jar build/libs/my-kotlin-app.jar

This would output:

Hello, Kotlin!

Cloud Services Recommendation

For deploying and running your Kotlin application in the cloud, consider using Tencent Cloud's Tencent Kubernetes Engine (TKE). TKE allows you to deploy, manage, and scale containerized applications, making it an ideal choice for deploying your Kotlin application in a scalable and managed environment.