Every release ships with a standalone version of the compiler. We can download it from GitHub Releases. The latest release is 1.3.41.
Unzip the standalone compiler into a directory and optionally add the bin
directory to the system path. The bin
directory contains the scripts needed to compile and run Kotlin on Windows, OS X and Linux.
An easier way to install Kotlin on UNIX based systems such as OS X, Linux, Cygwin, FreeBSD and Solaris is by using SDKMAN!. Simply run the following in a terminal and follow any instructions:
Next open a new terminal and install Kotlin with:
Alternatively, on OS X you can install the compiler via Homebrew.
If you're a MacPorts user, you can install the compiler with:
If you’re on Ubuntu 16.04 or later, you can install the compiler from the command line:
Create a simple application in Kotlin that displays Hello, World!. Using our favorite editor, we create a new file called hello.kt with the following:
Compile the application using the Kotlin compiler
The -d
option indicates what we want the output of the compiler to be called and may be either a directory name for class files or a .jar file name. The -include-runtime
option makes the resulting .jar file self-contained and runnable by including the Kotlin runtime library in it. If you want to see all available options run
Run the application.
If you're developing a library to be used by other Kotlin applications, you can produce the .jar file without including the Kotlin runtime into it.
Since binaries compiled this way depend on the Kotlin runtime you should make sure the latter is present in the classpath whenever your compiled library is used.
You can also use the kotlin
script to run binaries produced by the Kotlin compiler:
HelloKt
is the main class name that the Kotlin compiler generates for the file named hello.kt
.
We can run the compiler without parameters to have an interactive shell. We can type any valid Kotlin code and see the results.
Kotlin can also be used as a scripting language. A script is a Kotlin source file (.kts) with top level executable code.
import java.io.File val folders = File(args[0]).listFiles { file -> file.isDirectory() } folders?.forEach { folder -> println(folder) }
To run a script, we just pass the -script
option to the compiler with the corresponding script file.
Since 1.3.0 Kotlin has an experimental support for scripts customization, such as adding external properties, providing static or dynamic dependencies, and so on. Customizations are defined by so-called Script definitions - annotated kotlin classes with appropriate support code. The script filename extension is used to select appropriate definition.
Properly prepared script definitions are detected and applied automatically when the appropriate jars are included in the compilation classpath. Alternatively, you can specify definitions manually using -script-templates
option to the compiler:
For additional details, please consult the KEEP-75.
© 2010–2019 JetBrains s.r.o.
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/docs/tutorials/command-line.html