Skip to content

jeffboutotte/kotlin-plugin

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

77 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

kotlin-plugin

Build Status

Build kotlin code using sbt

Current version 2.0.0

Usage

  • for sbt 1.0.0+ addSbtPlugin("com.hanhuy.sbt" % "kotlin-plugin" % "2.0.0")
  • for sbt 0.13.x addSbtPlugin("com.hanhuy.sbt" % "kotlin-plugin" % "1.0.9")
  • Kotlin code will build automatically from src/XXX/kotlin
  • If necessary, add kotlinLib("stdlib"), it is not included by default.
    • Loading standard kotlin libraries and plugins: use kotlinLib(NAME) as above to load standard kotlin modules provided by JetBrains. For JetBrains kotlin compiler plugins, use kotlinPlugin(NAME) (e.g. kotlinPlugin("android-extensions")). The difference is that the latter marks the module as a compile-internal dependency and will be excluded from the final build product.
    • Any other libraries can be loaded using the normal libraryDependencies mechanism. Compiler plugins should be added as a normal libraryDependency but specified to be % "compile-internal"
  • If a non-standard Classpath key needs to be added to the kotlin compile step, it can be added using the kotlinClasspath(KEY) function
    • For example, to compile with the android platform using android-sdk-plugin: kotlinClasspath(Compile, bootClasspath in Android)

Options

  • kotlincPluginOptions: specifies options to pass to kotlin compiler plugins. Use val plugin = KotlinPluginOptions(PLUGINID) and plugin.option(KEY, VALUE) to populate this setting
  • kotlinSource: specifies kotlin source directory, defaults to src/main/kotlin and src/test/kotlin
  • kotlinVersion: specifies versions of kotlin compiler and libraries to use, defaults to 1.3.41
  • kotlinLib(LIB): load a standard kotlin library, for example kotlinLib("stdlib"); the library will utilize the version specified in kotlinVersion plugin
  • kotlincOptions: options to pass to the kotlin compiler

Examples

Limitations

  • currently requires kotlin 1.1.4+

About

Build kotlin code using sbt

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Scala 90.3%
  • Kotlin 9.0%
  • Java 0.7%