mill.kotlinlib

package mill.kotlinlib

Kotlin toolchain containing KotlinModule and other functionality related to building Kotlin projects. Also supports js.KotlinJsModule for building Kotlin-JS projects that run in the browser. The toolchain for building Kotlin on android lives separately in mill.androidlib.

Attributes

Members list

Type members

Classlikes

@Scaladoc(value = "/**\n * A [[KotlinModule]] with a Maven compatible directory layout:\n * `src/main/kotlin`, `src/test/resources`, etc.\n */")
trait KotlinMavenModule extends KotlinModule, MavenModule

A KotlinModule with a Maven compatible directory layout: src/main/kotlin, src/test/resources, etc.

A KotlinModule with a Maven compatible directory layout: src/main/kotlin, src/test/resources, etc.

Attributes

Supertypes
trait MavenModule
trait KotlinModule
trait JavaModule
trait JavaModuleApi
trait AssemblyModule
trait SemanticDbJavaModule
trait SemanticDbJavaModuleApi
trait OfflineSupportModule
trait GenIdeaModule
trait GenIdeaModuleApi
trait RunModule
trait RunModuleApi
trait DefaultTaskModule
trait JavaModuleBase
trait BspModule
trait BspModuleApi
trait WithJvmWorkerModule
trait JavaHomeModule
trait CoursierModule
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
@Scaladoc(value = "/**\n * Core configuration required to compile a single Kotlin module\n */")
trait KotlinModule extends JavaModule

Core configuration required to compile a single Kotlin module

Core configuration required to compile a single Kotlin module

Attributes

Companion
object
Supertypes
trait JavaModule
trait JavaModuleApi
trait AssemblyModule
trait SemanticDbJavaModule
trait SemanticDbJavaModuleApi
trait OfflineSupportModule
trait GenIdeaModule
trait GenIdeaModuleApi
trait RunModule
trait RunModuleApi
trait DefaultTaskModule
trait JavaModuleBase
trait BspModule
trait BspModuleApi
trait WithJvmWorkerModule
trait JavaHomeModule
trait CoursierModule
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
Known subtypes
Self type
object KotlinModule

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
class KotlinWorkerManager()(implicit ctx: TaskCtx) extends ClassLoaderCachedFactory[KotlinWorker]

Attributes

Companion
object
Supertypes
class ClassLoaderCachedFactory[KotlinWorker]
class CachedFactory[Seq[PathRef], KotlinWorker]
trait AutoCloseable
class Object
trait Matchable
class Any
Show all
object KotlinWorkerManager extends ExternalModule

Attributes

Companion
class
Supertypes
class ExternalModule
class RootModule0
trait BaseModuleApi
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
Self type
@Scaladoc(value = "/**\n * A [[KotlinModule]] intended for defining `.jvm`/`.js`/etc. submodules\n * It supports additional source directories per platform, e.g. `src-jvm/` or\n * `src-js/`.\n *\n * Adjusts the [[moduleDir]] and [[artifactNameParts]] to ignore the last\n * path segment, which is assumed to be the name of the platform the module is\n * built against and not something that should affect the filesystem path or\n * artifact name\n */")
trait PlatformKotlinModule extends PlatformModuleBase, KotlinModule

A KotlinModule intended for defining .jvm/.js/etc. submodules It supports additional source directories per platform, e.g. src-jvm/ or src-js/.

A KotlinModule intended for defining .jvm/.js/etc. submodules It supports additional source directories per platform, e.g. src-jvm/ or src-js/.

Adjusts the moduleDir and artifactNameParts to ignore the last path segment, which is assumed to be the name of the platform the module is built against and not something that should affect the filesystem path or artifact name

Attributes

Supertypes
trait KotlinModule
trait PlatformModuleBase
trait JavaModule
trait JavaModuleApi
trait AssemblyModule
trait SemanticDbJavaModule
trait SemanticDbJavaModuleApi
trait OfflineSupportModule
trait GenIdeaModule
trait GenIdeaModuleApi
trait RunModule
trait RunModuleApi
trait DefaultTaskModule
trait JavaModuleBase
trait BspModule
trait BspModuleApi
trait WithJvmWorkerModule
trait JavaHomeModule
trait CoursierModule
trait Module
trait ModuleApi
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
object Versions

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
Versions.type

Exports

Defined exports

final val Dep: Dep
Exported from javalib
@Scaladoc(value = "/**\n * Models a JVM dependency for Java or Scala. Wraps an underlying [[coursier.Dependency]],\n * with a possible [[CrossVersion]], and the ability to [[force]] the dependency to pin\n * its exact version\n */")
final type Dep = Dep
Exported from javalib
final type DepSyntax = DepSyntax
Exported from package$
final val JvmWorkerModule: JvmWorkerModule
Exported from javalib
@Scaladoc(value = "/**\n * A module managing an in-memory Zinc Scala incremental compiler\n */")
final type JvmWorkerModule = JvmWorkerModule
Exported from javalib
@Scaladoc(value = "/**\n * Provides a [[NativeImageModule.nativeImage task]] to build a native executable using [[https://www.graalvm.org/ Graal VM]].\n *\n * It is recommended to specify a custom JDK that includes the `native-image` Tool.\n * {{{\n * trait AppModule extends NativeImageModule {\n * def jvmWorker = ModuleRef(JvmWorkerGraalvm)\n *\n * def jvmId = \"graalvm-community:23.0.1\"\n * }\n * }}}\n */")
final type NativeImageModule = NativeImageModule
Exported from javalib
final val PublishModule: PublishModule
Exported from javalib
@Scaladoc(value = "/**\n * Configuration necessary for publishing a Scala module to Maven Central or similar\n */")
final type PublishModule = PublishModule
Exported from javalib
final val TestModule: TestModule
Exported from javalib
@Scaladoc(value = "/**\n * A module containing JVM test suites. Requires you define a [[testFramework]] for your\n * Java, Scala or Kotlin testing library that implements the `sbt.testing` interface.\n * For many test frameworks, pre-configured traits are provided for you in [[TestModule.Junit4]],\n * [[TestModule.Junit5]], [[TestModule.ScalaTest]], etc.\n */")
final type TestModule = TestModule
Exported from javalib