ScalaTests

mill.scalalib.ScalaModule.ScalaTests

Attributes

Source
ScalaModule.scala
Graph
Supertypes
trait ScalaModule
trait JavaTests
trait TestModule
trait JavaModule
trait RunModule
trait TaskModule
trait BspModule
trait Module
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
Known subtypes

Members list

Type members

Inherited classlikes

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
Supertypes
trait TestModule
trait JavaModule
trait RunModule
trait TaskModule
trait BspModule
trait Module
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
Known subtypes

Attributes

Inherited from:
ScalaModule
Source
ScalaModule.scala
Supertypes
trait ScalaModule
trait JavaTests
trait TestModule
trait JavaModule
trait RunModule
trait TaskModule
trait BspModule
trait Module
trait Wrapper
class BaseClass
trait Cacher
trait Cacher
class Object
trait Matchable
class Any
Show all
Known subtypes
@Scaladoc(value = "/**\n * Miscellaneous machinery around traversing & querying the build hierarchy,\n * that should not be needed by normal users of Mill\n */")
object moduleInternal extends Internal

Miscellaneous machinery around traversing & querying the build hierarchy, that should not be needed by normal users of Mill

Miscellaneous machinery around traversing & querying the build hierarchy, that should not be needed by normal users of Mill

Attributes

Inherited from:
Module
Source
Module.scala
Supertypes
class Internal
class Object
trait Matchable
class Any

Value members

Concrete methods

override def mandatoryScalacOptions: Target[Seq[String]]

Mandatory command-line options to pass to the Scala compiler that shouldn't be removed by overriding scalacOptions

Mandatory command-line options to pass to the Scala compiler that shouldn't be removed by overriding scalacOptions

Attributes

Definition Classes
Source
ScalaModule.scala
override def scalaOrganization: Target[String]

What Scala organization to use

What Scala organization to use

Attributes

Definition Classes
Source
ScalaModule.scala
override def scalaVersion: Target[String]

What version of Scala to use

What version of Scala to use

Attributes

Definition Classes
Source
ScalaModule.scala
override def scalacOptions: Target[Seq[String]]

Command-line options to pass to the Scala compiler defined by the user. Consumers should use allScalacOptions to read them.

Command-line options to pass to the Scala compiler defined by the user. Consumers should use allScalacOptions to read them.

Attributes

Definition Classes
Source
ScalaModule.scala
override def scalacPluginClasspath: Target[Seq[PathRef]]

The local classpath of Scala compiler plugins on-disk; you can add additional jars here if you have some copiler plugin that isn't present on maven central

The local classpath of Scala compiler plugins on-disk; you can add additional jars here if you have some copiler plugin that isn't present on maven central

Attributes

Definition Classes
Source
ScalaModule.scala
override def scalacPluginIvyDeps: Target[Seq[Dep]]

Allows you to make use of Scala compiler plugins.

Allows you to make use of Scala compiler plugins.

Attributes

Definition Classes
Source
ScalaModule.scala

Inherited methods

def allBomDeps: Task[Seq[BomDependency]]

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Aggregation of mandatoryIvyDeps and ivyDeps.\n * In most cases, instead of overriding this Target you want to override `ivyDeps` instead.\n */")
def allIvyDeps: Target[Seq[Dep]]

Aggregation of mandatoryIvyDeps and ivyDeps. In most cases, instead of overriding this Target you want to override ivyDeps instead.

Aggregation of mandatoryIvyDeps and ivyDeps. In most cases, instead of overriding this Target you want to override ivyDeps instead.

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
def allLocalMainClasses: Target[Seq[String]]

Attributes

Inherited from:
RunModule
Source
RunModule.scala
@Scaladoc(value = "/**\n * Aggregation of all the options passed to the Scala compiler.\n * In most cases, instead of overriding this Target you want to override `scalacOptions` instead.\n */")
def allScalacOptions: Target[Seq[String]]

Aggregation of all the options passed to the Scala compiler. In most cases, instead of overriding this Target you want to override scalacOptions instead.

Aggregation of all the options passed to the Scala compiler. In most cases, instead of overriding this Target you want to override scalacOptions instead.

Attributes

Inherited from:
ScalaModule
Source
ScalaModule.scala
@Scaladoc(value = "/**\n * All individual source files fed into the Zinc compiler.\n */")
override def allSourceFiles: Target[Seq[PathRef]]

All individual source files fed into the Zinc compiler.

All individual source files fed into the Zinc compiler.

Attributes

Definition Classes
Inherited from:
ScalaModule
Source
ScalaModule.scala
@Scaladoc(value = "/**\n * The folders containing all source files fed into the compiler\n */")

The folders containing all source files fed into the compiler

The folders containing all source files fed into the compiler

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Dependencies that are necessary to run the Ammonite Scala REPL\n */")

Dependencies that are necessary to run the Ammonite Scala REPL

Dependencies that are necessary to run the Ammonite Scala REPL

Attributes

Inherited from:
ScalaModule
Source
ScalaModule.scala
@Scaladoc(value = "/**\n * Ammonite\'s version used in the `repl` command is by default\n * set to the one Mill is built against.\n */")
def ammoniteVersion: Target[String]

Ammonite's version used in the repl command is by default set to the one Mill is built against.

Ammonite's version used in the repl command is by default set to the one Mill is built against.

Attributes

Inherited from:
ScalaModule
Source
ScalaModule.scala
override def artifactId: Target[String]

The exact id of the artifact to be published. You probably don't want to override this. If you want to customize the name of the artifact, override artifactName instead. If you want to customize the scala version in the artifact id, see ScalaModule.artifactScalaVersion

The exact id of the artifact to be published. You probably don't want to override this. If you want to customize the name of the artifact, override artifactName instead. If you want to customize the scala version in the artifact id, see ScalaModule.artifactScalaVersion

Attributes

Definition Classes
Inherited from:
ScalaModule
Source
ScalaModule.scala
@Scaladoc(value = "/**\n * Override this to change the published artifact id.\n * For example, by default a scala module foo.baz might be published as foo-baz_2.12 and a java module would be foo-baz.\n * Setting this to baz would result in a scala artifact baz_2.12 or a java artifact baz.\n */")
def artifactName: Target[String]

Override this to change the published artifact id. For example, by default a scala module foo.baz might be published as foo-baz_2.12 and a java module would be foo-baz. Setting this to baz would result in a scala artifact baz_2.12 or a java artifact baz.

Override this to change the published artifact id. For example, by default a scala module foo.baz might be published as foo-baz_2.12 and a java module would be foo-baz. Setting this to baz would result in a scala artifact baz_2.12 or a java artifact baz.

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
def artifactNameParts: Target[Seq[String]]

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * What Scala version string to use when publishing\n */")

What Scala version string to use when publishing

What Scala version string to use when publishing

Attributes

Inherited from:
ScalaModule
Source
ScalaModule.scala
override def artifactSuffix: Target[String]

The suffix appended to the artifact IDs during publishing

The suffix appended to the artifact IDs during publishing

Attributes

Definition Classes
Inherited from:
ScalaModule
Source
ScalaModule.scala
@Scaladoc(value = "/**\n * Default artifact types to fetch and put in the classpath. Add extra types\n * here if you\'d like fancy artifact extensions to be fetched.\n */")
def artifactTypes: Target[Set[Type]]

Default artifact types to fetch and put in the classpath. Add extra types here if you'd like fancy artifact extensions to be fetched.

Default artifact types to fetch and put in the classpath. Add extra types here if you'd like fancy artifact extensions to be fetched.

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * An executable uber-jar/assembly containing all the resources and compiled\n * classfiles from this module and all it\'s upstream modules and dependencies\n */")

An executable uber-jar/assembly containing all the resources and compiled classfiles from this module and all it's upstream modules and dependencies

An executable uber-jar/assembly containing all the resources and compiled classfiles from this module and all it's upstream modules and dependencies

Attributes

Inherited from:
AssemblyModule
Source
AssemblyModule.scala
@Scaladoc(value = "/**\n * Configuration for the [[assembly]] task: how files and file-conflicts are\n * managed when combining multiple jar files into one big assembly jar.\n */")
def assemblyRules: Seq[Rule]

Configuration for the assembly task: how files and file-conflicts are managed when combining multiple jar files into one big assembly jar.

Configuration for the assembly task: how files and file-conflicts are managed when combining multiple jar files into one big assembly jar.

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala

Bind a dependency (Dep) to the actual module context (e.g. the scala version and the platform suffix)

Bind a dependency (Dep) to the actual module context (e.g. the scala version and the platform suffix)

Attributes

Returns

The BoundDep

Inherited from:
ScalaModule
Source
ScalaModule.scala
override def bomIvyDeps: Target[Seq[Dep]]

Any Bill of Material (BOM) dependencies you want to add to this Module, in the format ivy"org:name:version"

Any Bill of Material (BOM) dependencies you want to add to this Module, in the format ivy"org:name:version"

Attributes

Definition Classes
Inherited from:
JavaTests
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Bill of Material (BOM) dependencies of this module.\n * This is meant to be overridden to add BOM dependencies.\n * To read the value, you should use [[bomModuleDepsChecked]] instead,\n * which uses a cached result which is also checked to be free of cycles.\n * @see [[bomModuleDepsChecked]]\n */")

Bill of Material (BOM) dependencies of this module. This is meant to be overridden to add BOM dependencies. To read the value, you should use bomModuleDepsChecked instead, which uses a cached result which is also checked to be free of cycles.

Bill of Material (BOM) dependencies of this module. This is meant to be overridden to add BOM dependencies. To read the value, you should use bomModuleDepsChecked instead, which uses a cached result which is also checked to be free of cycles.

Attributes

See also
Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Same as [[bomModuleDeps]] but checked to not contain cycles.\n * Prefer this over using [[bomModuleDeps]] directly.\n */")

Same as bomModuleDeps but checked to not contain cycles. Prefer this over using bomModuleDeps directly.

Same as bomModuleDeps but checked to not contain cycles. Prefer this over using bomModuleDeps directly.

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala

Use to fill most fields of BuildTarget.

Use to fill most fields of BuildTarget.

Attributes

Definition Classes
Inherited from:
ScalaModule
Source
ScalaModule.scala
override def bspBuildTargetData: Task[Option[(String, AnyRef)]]

Use to populate the BuildTarget.{dataKind,data} fields.

Use to populate the BuildTarget.{dataKind,data} fields.

Mill specific implementations:

  • JvmBuildTarget
  • ScalaBuildTarget

Attributes

Definition Classes
Inherited from:
ScalaModule
Source
ScalaModule.scala
@Scaladoc(value = "/** the path to the compiled classes without forcing the compilation. */")

the path to the compiled classes without forcing the compilation.

the path to the compiled classes without forcing the compilation.

Attributes

Definition Classes
Inherited from:
ScalaModule
Source
ScalaModule.scala
@Scaladoc(value = "/**\n * Same as [[compileClasspath]], but does not trigger compilation targets, if possible.\n *\n * Keep in sync with [[compileClasspath]]\n */")

Same as compileClasspath, but does not trigger compilation targets, if possible.

Same as compileClasspath, but does not trigger compilation targets, if possible.

Keep in sync with compileClasspath

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
def bspDisplayName: String

Attributes

Inherited from:
BspModule
Source
BspModule.scala
def bspDisplayName0: String

Attributes

Inherited from:
BspModule
Source
BspModule.scala

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Same as [[localClasspath]], but with all dependencies on [[compile]]\n * replaced by their non-compiling [[bspCompileClassesPath]] variants.\n *\n * Keep in sync with [[localClasspath]]\n */")

Same as localClasspath, but with all dependencies on compile replaced by their non-compiling bspCompileClassesPath variants.

Same as localClasspath, but with all dependencies on compile replaced by their non-compiling bspCompileClassesPath variants.

Keep in sync with localClasspath

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Same as [[localRunClasspath]] but for use in BSP server.\n *\n * Keep in sync with [[localRunClasspath]]\n */")

Same as localRunClasspath but for use in BSP server.

Same as localRunClasspath but for use in BSP server.

Keep in sync with localRunClasspath

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Same as [[transitiveCompileClasspath]], but with all dependencies on [[compile]]\n * replaced by their non-compiling [[bspCompileClassesPath]] variants.\n *\n * Keep in sync with [[transitiveCompileClasspath]]\n */")

Same as transitiveCompileClasspath, but with all dependencies on compile replaced by their non-compiling bspCompileClassesPath variants.

Same as transitiveCompileClasspath, but with all dependencies on compile replaced by their non-compiling bspCompileClassesPath variants.

Keep in sync with transitiveCompileClasspath

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Same as [[transitiveLocalClasspath]], but with all dependencies on [[compile]]\n * replaced by their non-compiling [[bspCompileClassesPath]] variants.\n *\n * Keep in sync with [[transitiveLocalClasspath]]\n */")

Same as transitiveLocalClasspath, but with all dependencies on compile replaced by their non-compiling bspCompileClassesPath variants.

Same as transitiveLocalClasspath, but with all dependencies on compile replaced by their non-compiling bspCompileClassesPath variants.

Keep in sync with transitiveLocalClasspath

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala

Compiles the current module to generate compiled classfiles/bytecode.

Compiles the current module to generate compiled classfiles/bytecode.

When you override this, you probably also want/need to override bspCompileClassesPath, as that needs to point to the same compilation output path.

Keep in sync with bspCompileClassesPath

Attributes

Definition Classes
Inherited from:
ScalaModule
Source
ScalaModule.scala
@Scaladoc(value = "/**\n * All classfiles and resources from upstream modules and dependencies\n * necessary to compile this module.\n *\n * Keep in sync with [[bspCompileClasspath]]\n */")

All classfiles and resources from upstream modules and dependencies necessary to compile this module.

All classfiles and resources from upstream modules and dependencies necessary to compile this module.

Keep in sync with bspCompileClasspath

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Same as `ivyDeps`, but only present at compile time. Useful for e.g.\n * macro-related dependencies like `scala-reflect` that doesn\'t need to be\n * present at runtime\n */")

Same as ivyDeps, but only present at compile time. Useful for e.g. macro-related dependencies like scala-reflect that doesn't need to be present at runtime

Same as ivyDeps, but only present at compile time. Useful for e.g. macro-related dependencies like scala-reflect that doesn't need to be present at runtime

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * The compile-only direct dependencies of this module. These are *not*\n * transitive, and only take effect in the module that they are declared in.\n */")

The compile-only direct dependencies of this module. These are not transitive, and only take effect in the module that they are declared in.

The compile-only direct dependencies of this module. These are not transitive, and only take effect in the module that they are declared in.

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/** Same as [[compileModuleDeps]] but checked to not contain cycles. */")

Same as compileModuleDeps but checked to not contain cycles.

Same as compileModuleDeps but checked to not contain cycles.

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * The folders where the compile time resource files for this module live.\n * If your resources files do not necessarily need to be seen by the compiler,\n * you should use [[resources]] instead.\n */")

The folders where the compile time resource files for this module live. If your resources files do not necessarily need to be seen by the compiler, you should use resources instead.

The folders where the compile time resource files for this module live. If your resources files do not necessarily need to be seen by the compiler, you should use resources instead.

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Opens up a Scala console with your module and all dependencies present,\n * for you to test and operate your code interactively.\n */")
def console(): Command[Unit]

Opens up a Scala console with your module and all dependencies present, for you to test and operate your code interactively.

Opens up a Scala console with your module and all dependencies present, for you to test and operate your code interactively.

Attributes

Inherited from:
ScalaModule
Source
ScalaModule.scala
@Scaladoc(value = "/**\n * Command-line options to pass to the Scala console\n */")
def consoleScalacOptions: Target[Seq[String]]

Command-line options to pass to the Scala console

Command-line options to pass to the Scala console

Attributes

Inherited from:
ScalaModule
Source
ScalaModule.scala
@Scaladoc(value = "/**\n * Customize the coursier file cache.\n *\n * This is rarely needed to be changed, but sometimes e.g. you want to load a coursier plugin.\n * Doing so requires adding to coursier\'s classpath. To do this you could use the following:\n * {{{\n * override def coursierCacheCustomizer = Task.Anon {\n * Some( (fc: coursier.cache.FileCache[Task]) =>\n * fc.withClassLoaders(Seq(classOf[coursier.cache.protocol.S3Handler].getClassLoader))\n * )\n * }\n * }}}\n * @return\n */")
def coursierCacheCustomizer: Task[Option[FileCache[Task] => FileCache[Task]]]

Customize the coursier file cache.

Customize the coursier file cache.

This is rarely needed to be changed, but sometimes e.g. you want to load a coursier plugin. Doing so requires adding to coursier's classpath. To do this you could use the following:

 override def coursierCacheCustomizer = Task.Anon {
    Some( (fc: coursier.cache.FileCache[Task]) =>
      fc.withClassLoaders(Seq(classOf[coursier.cache.protocol.S3Handler].getClassLoader))
    )
 }

Attributes

Inherited from:
CoursierModule
Source
CoursierModule.scala
@Scaladoc(value = "/**\n * The `coursier.Dependency` to use to refer to this module\n */")
def coursierDependency: Dependency

The coursier.Dependency to use to refer to this module

The coursier.Dependency to use to refer to this module

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * The `coursier.Project` corresponding to this `JavaModule`.\n *\n * This provides details about this module to the coursier resolver (details such as\n * dependencies, BOM dependencies, dependency management, etc.). Beyond more general\n * resolution parameters (such as artifact types, etc.), this should be the only way\n * we provide details about this module to coursier.\n */")
def coursierProject: Task[Project]

The coursier.Project corresponding to this JavaModule.

The coursier.Project corresponding to this JavaModule.

This provides details about this module to the coursier resolver (details such as dependencies, BOM dependencies, dependency management, etc.). Beyond more general resolution parameters (such as artifact types, etc.), this should be the only way we provide details about this module to coursier.

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Whether to publish artifacts with name \"mill_2.12.4\" instead of \"mill_2.12\"\n */")

Whether to publish artifacts with name "mill_2.12.4" instead of "mill_2.12"

Whether to publish artifacts with name "mill_2.12.4" instead of "mill_2.12"

Attributes

Inherited from:
ScalaModule
Source
ScalaModule.scala
override def defaultCommandName(): String

The name of the default command, which will be automatically executed if the module name is provided at the Mill command line.

The name of the default command, which will be automatically executed if the module name is provided at the Mill command line.

Attributes

Definition Classes
Inherited from:
TestModule
Source
TestModule.scala

Attributes

Inherited from:
CoursierModule
Source
CoursierModule.scala
override def depManagement: Target[Seq[Dep]]

Dependency management data

Dependency management data

Versions and exclusions in dependency management override those of transitive dependencies, while they have no effect if the corresponding dependency isn't pulled during dependency resolution.

For example, the following forces com.lihaoyi::os-lib to version 0.11.3, and excludes org.slf4j:slf4j-api from com.lihaoyi::cask that it forces to version 0.9.4

 def depManagement = super.depManagement() ++ Seq(
   ivy"com.lihaoyi::os-lib:0.11.3",
   ivy"com.lihaoyi::cask:0.9.5".exclude("org.slf4j", "slf4j-api")
 )

Attributes

Definition Classes
Inherited from:
JavaTests
Source
JavaModule.scala
def discoveredTestClasses: Target[Seq[String]]

Attributes

Inherited from:
TestModule
Source
TestModule.scala
override def docJar: Target[PathRef]

The documentation jar, containing all the Javadoc/Scaladoc HTML files, for publishing to Maven Central

The documentation jar, containing all the Javadoc/Scaladoc HTML files, for publishing to Maven Central

Attributes

Definition Classes
Inherited from:
ScalaModule
Source
ScalaModule.scala
@Scaladoc(value = "/**\n * Control whether `docJar`-target should use a file to pass command line arguments to the javadoc tool.\n * Defaults to `true` on Windows.\n * Beware: Using an args-file is probably not supported for very old javadoc versions.\n */")
def docJarUseArgsFile: Target[Boolean]

Control whether docJar-target should use a file to pass command line arguments to the javadoc tool. Defaults to true on Windows. Beware: Using an args-file is probably not supported for very old javadoc versions.

Control whether docJar-target should use a file to pass command line arguments to the javadoc tool. Defaults to true on Windows. Beware: Using an args-file is probably not supported for very old javadoc versions.

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Extra directories to be copied into the documentation.\n *\n * Typically, includes static files such as html and markdown, but depends\n * on the doc tool that is actually used.\n * @see [[docSources]]\n */")

Extra directories to be copied into the documentation.

Extra directories to be copied into the documentation.

Typically, includes static files such as html and markdown, but depends on the doc tool that is actually used.

Attributes

See also
Inherited from:
JavaModule
Source
JavaModule.scala
override def docSources: Target[Seq[PathRef]]

Directories to be processed by the API documentation tool.

Directories to be processed by the API documentation tool.

Typically, includes the source files to generate documentation from.

Attributes

See also
Definition Classes
Inherited from:
ScalaModule
Source
ScalaModule.scala
def finalMainClass: Target[String]

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
def finalMainClassOpt: Target[Either[String, String]]

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Any command-line parameters you want to pass to the forked JVM under `run`,\n * `test` or `repl`\n */")
override def forkArgs: Target[Seq[String]]

Any command-line parameters you want to pass to the forked JVM under run, test or repl

Any command-line parameters you want to pass to the forked JVM under run, test or repl

Attributes

Definition Classes
Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Similar to `forkArgs` but only applies to the `bat` launcher script\n */")
def forkCmdArgs: Target[Seq[String]]

Similar to forkArgs but only applies to the bat launcher script

Similar to forkArgs but only applies to the bat launcher script

Attributes

Inherited from:
AssemblyModule
Source
AssemblyModule.scala
@Scaladoc(value = "/**\n * Any environment variables you want to pass to the forked JVM under `run`,\n * `test` or `repl`\n */")
override def forkEnv: Target[Map[String, String]]

Any environment variables you want to pass to the forked JVM under run, test or repl

Any environment variables you want to pass to the forked JVM under run, test or repl

Attributes

Definition Classes
Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Similar to `forkArgs` but only applies to the `sh` launcher script\n */")
def forkShellArgs: Target[Seq[String]]

Similar to forkArgs but only applies to the sh launcher script

Similar to forkArgs but only applies to the sh launcher script

Attributes

Inherited from:
AssemblyModule
Source
AssemblyModule.scala
override def forkWorkingDir: Target[Path]

Attributes

Definition Classes
Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Folders containing source files that are generated rather than\n * handwritten; these files can be generated in this target itself,\n * or can refer to files generated from other targets\n */")

Folders containing source files that are generated rather than handwritten; these files can be generated in this target itself, or can refer to files generated from other targets

Folders containing source files that are generated rather than handwritten; these files can be generated in this target itself, or can refer to files generated from other targets

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
def getTestEnvironmentVars(args: String*): Command[(String, String, String, Seq[String])]

Attributes

Inherited from:
TestModule
Source
TestModule.scala
@Scaladoc(value = "/**\n * JavaModule and its derivatives define inner test modules.\n * To avoid unexpected misbehavior due to the use of the wrong inner test trait\n * we apply some hierarchy consistency checks.\n * If, for some reason, those are too restrictive to you, you can override this method.\n * @throws MillException\n */")
protected def hierarchyChecks(): Unit

JavaModule and its derivatives define inner test modules. To avoid unexpected misbehavior due to the use of the wrong inner test trait we apply some hierarchy consistency checks. If, for some reason, those are too restrictive to you, you can override this method.

JavaModule and its derivatives define inner test modules. To avoid unexpected misbehavior due to the use of the wrong inner test trait we apply some hierarchy consistency checks. If, for some reason, those are too restrictive to you, you can override this method.

Attributes

Inherited from:
JavaTests
Source
JavaModule.scala

Attributes

Inherited from:
GenIdeaModule
Source
GenIdeaModule.scala
@Scaladoc(value = "/**\n * Contribute components to idea config files.\n */")
def ideaConfigFiles(ideaConfigVersion: Int): Task[Seq[IdeaConfigFile]]

Contribute components to idea config files.

Contribute components to idea config files.

Attributes

Inherited from:
GenIdeaModule
Source
GenIdeaModule.scala
@Scaladoc(value = "/**\n * Contribute facets to the Java module configuration.\n * @param ideaConfigVersion The IDEA configuration version in use. Probably `4`.\n * @return\n */")
def ideaJavaModuleFacets(ideaConfigVersion: Int): Task[Seq[JavaFacet]]

Contribute facets to the Java module configuration.

Contribute facets to the Java module configuration.

Value parameters

ideaConfigVersion

The IDEA configuration version in use. Probably 4.

Attributes

Inherited from:
GenIdeaModule
Source
GenIdeaModule.scala
def intellijModulePath: Path

Attributes

Inherited from:
GenIdeaModule
Source
GenIdeaModule.scala
@Scaladoc(value = "/**\n * The repository that knows about this project itself and its module dependencies\n */")

The repository that knows about this project itself and its module dependencies

The repository that knows about this project itself and its module dependencies

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Mill internal repositories to be used during dependency resolution\n *\n * These are not meant to be modified by Mill users, unless you really know what you\'re\n * doing.\n */")
def internalRepositories: Task[Seq[Repository]]

Mill internal repositories to be used during dependency resolution

Mill internal repositories to be used during dependency resolution

These are not meant to be modified by Mill users, unless you really know what you're doing.

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Any ivy dependencies you want to add to this Module, in the format\n * ivy\"org::name:version\" for Scala dependencies or ivy\"org:name:version\"\n * for Java dependencies\n */")
def ivyDeps: Target[Seq[Dep]]

Any ivy dependencies you want to add to this Module, in the format ivy"org::name:version" for Scala dependencies or ivy"org:name:version" for Java dependencies

Any ivy dependencies you want to add to this Module, in the format ivy"org::name:version" for Scala dependencies or ivy"org:name:version" for Java dependencies

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Command to print the transitive dependency tree to STDOUT.\n */")
def ivyDepsTree(args: IvyDepsTreeArgs): Command[Unit]

Command to print the transitive dependency tree to STDOUT.

Command to print the transitive dependency tree to STDOUT.

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * A jar containing only this module\'s resources and compiled classfiles,\n * without those from upstream modules and dependencies\n */")

A jar containing only this module's resources and compiled classfiles, without those from upstream modules and dependencies

A jar containing only this module's resources and compiled classfiles, without those from upstream modules and dependencies

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
override def javacOptions: Target[Seq[String]]

Options to pass to the java compiler

Options to pass to the java compiler

Attributes

Definition Classes
Inherited from:
JavaTests
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Additional options to be used by the javadoc tool.\n * You should not set the `-d` setting for specifying the target directory,\n * as that is done in the [[docJar]] target.\n */")
def javadocOptions: Target[Seq[String]]

Additional options to be used by the javadoc tool. You should not set the -d setting for specifying the target directory, as that is done in the docJar target.

Additional options to be used by the javadoc tool. You should not set the -d setting for specifying the target directory, as that is done in the docJar target.

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala

Builds a command-line "launcher" file that can be used to run this module's code, without the Mill process. Useful for deployment & other places where you do not want a build tool running

Builds a command-line "launcher" file that can be used to run this module's code, without the Mill process. Useful for deployment & other places where you do not want a build tool running

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * The *output* classfiles/resources from this module, used for execution,\n * excluding upstream modules and third-party dependencies, but including unmanaged dependencies.\n *\n * This is build from [[localCompileClasspath]] and [[localRunClasspath]]\n * as the parts available \"before compilation\" and \"after compilation\".\n *\n * Keep in sync with [[bspLocalClasspath]]\n */")

The output classfiles/resources from this module, used for execution, excluding upstream modules and third-party dependencies, but including unmanaged dependencies.

The output classfiles/resources from this module, used for execution, excluding upstream modules and third-party dependencies, but including unmanaged dependencies.

This is build from localCompileClasspath and localRunClasspath as the parts available "before compilation" and "after compilation".

Keep in sync with bspLocalClasspath

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * The *input* classfiles/resources from this module, used during compilation,\n * excluding upstream modules and third-party dependencies\n */")

The input classfiles/resources from this module, used during compilation, excluding upstream modules and third-party dependencies

The input classfiles/resources from this module, used during compilation, excluding upstream modules and third-party dependencies

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * The part of the [[localClasspath]] which is available \"after compilation\".\n *\n * Keep in sync with [[bspLocalRunClasspath]]\n */")
override def localRunClasspath: Target[Seq[PathRef]]

The part of the localClasspath which is available "after compilation".

The part of the localClasspath which is available "after compilation".

Keep in sync with bspLocalRunClasspath

Attributes

Definition Classes
Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Allows you to specify an explicit main class to use for the `run` command.\n * If none is specified, the classpath is searched for an appropriate main\n * class to use if one exists\n */")
def mainClass: Target[Option[String]]

Allows you to specify an explicit main class to use for the run command. If none is specified, the classpath is searched for an appropriate main class to use if one exists

Allows you to specify an explicit main class to use for the run command. If none is specified, the classpath is searched for an appropriate main class to use if one exists

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/** Adds the Scala Library is a mandatory dependency. */")
override def mandatoryIvyDeps: Target[Seq[Dep]]

Adds the Scala Library is a mandatory dependency.

Adds the Scala Library is a mandatory dependency.

Attributes

Definition Classes
Inherited from:
ScalaModule
Source
ScalaModule.scala
@Scaladoc(value = "/**\n * Additional options for the java compiler derived from other module settings.\n */")
def mandatoryJavacOptions: Target[Seq[String]]

Additional options for the java compiler derived from other module settings.

Additional options for the java compiler derived from other module settings.

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
override def manifest: Target[JarManifest]

Creates a manifest representation which can be modified or replaced The default implementation just adds the Manifest-Version, Main-Class and Created-By attributes

Creates a manifest representation which can be modified or replaced The default implementation just adds the Manifest-Version, Main-Class and Created-By attributes

Attributes

Definition Classes
Inherited from:
ScalaModule
Source
ScalaModule.scala
override def mapDependencies: Task[Dependency => Dependency]

Map dependencies before resolving them. Override this to customize the set of dependencies.

Map dependencies before resolving them. Override this to customize the set of dependencies.

Attributes

Definition Classes
Inherited from:
ScalaModule
Source
ScalaModule.scala
def moduleCtx: Ctx

Attributes

Inherited from:
BaseClass
Source
Module.scala
override def moduleDeps: Seq[JavaModule]

The direct dependencies of this module. This is meant to be overridden to add dependencies. To read the value, you should use moduleDepsChecked instead, which uses a cached result which is also checked to be free of cycle.

The direct dependencies of this module. This is meant to be overridden to add dependencies. To read the value, you should use moduleDepsChecked instead, which uses a cached result which is also checked to be free of cycle.

Attributes

See also

moduleDepschecked

Definition Classes
Inherited from:
JavaTests
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Same as [[moduleDeps]] but checked to not contain cycles.\n * Prefer this over using [[moduleDeps]] directly.\n */")
final def moduleDepsChecked: Seq[JavaModule]

Same as moduleDeps but checked to not contain cycles. Prefer this over using moduleDeps directly.

Same as moduleDeps but checked to not contain cycles. Prefer this over using moduleDeps directly.

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
def moduleDir: Path

Attributes

Inherited from:
Module
Source
Module.scala

Attributes

Inherited from:
Module
Source
Module.scala

Attributes

Inherited from:
Module
Source
Module.scala
@Scaladoc(value = "/**\n * What platform suffix to use for publishing, e.g. `_sjs` for Scala.js\n * projects\n */")
def platformSuffix: Target[String]

What platform suffix to use for publishing, e.g. _sjs for Scala.js projects

What platform suffix to use for publishing, e.g. _sjs for Scala.js projects

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * @param all If `true` , fetches also sources, Ammonite and compiler dependencies.\n */")
override def prepareOffline(all: Flag): Command[Unit]

Value parameters

all

If true , fetches also sources, Ammonite and compiler dependencies.

Attributes

Definition Classes
Inherited from:
ScalaModule
Source
ScalaModule.scala
@Scaladoc(value = "/**\n * What shell script to use to launch the executable generated by `assembly`.\n * Defaults to a generic \"universal\" launcher that should work for Windows,\n * OS-X and Linux\n */")
def prependShellScript: Target[String]

What shell script to use to launch the executable generated by assembly. Defaults to a generic "universal" launcher that should work for Windows, OS-X and Linux

What shell script to use to launch the executable generated by assembly. Defaults to a generic "universal" launcher that should work for Windows, OS-X and Linux

Attributes

Inherited from:
AssemblyModule
Source
AssemblyModule.scala
@Scaladoc(value = "/** The direct and indirect dependencies of this module */")

The direct and indirect dependencies of this module

The direct and indirect dependencies of this module

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/** The direct and indirect runtime module dependencies of this module */")

The direct and indirect runtime module dependencies of this module

The direct and indirect runtime module dependencies of this module

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Opens up an Ammonite Scala REPL with your module and all dependencies present,\n * for you to test and operate your code interactively.\n * Use [[ammoniteVersion]] to customize the Ammonite version to use.\n */")
def repl(replOptions: String*): Command[Unit]

Opens up an Ammonite Scala REPL with your module and all dependencies present, for you to test and operate your code interactively. Use ammoniteVersion to customize the Ammonite version to use.

Opens up an Ammonite Scala REPL with your module and all dependencies present, for you to test and operate your code interactively. Use ammoniteVersion to customize the Ammonite version to use.

Attributes

Inherited from:
ScalaModule
Source
ScalaModule.scala
override def repositoriesTask: Task[Seq[Repository]]

The repositories used to resolved dependencies with resolveDeps.

The repositories used to resolved dependencies with resolveDeps.

Attributes

Definition Classes
Inherited from:
JavaTests
Source
JavaModule.scala
override def resolutionCustomizer: Task[Option[Resolution => Resolution]]

Customize the coursier resolution process. This is rarely needed to changed, as the default try to provide a highly reproducible resolution process. But sometime, you need more control, e.g. you want to add some OS or JDK specific resolution properties which are sometimes used by Maven and therefore found in dependency artifact metadata. For example, the JavaFX artifacts are known to use OS specific properties. To fix resolution for JavaFX, you could override this task like the following:

Customize the coursier resolution process. This is rarely needed to changed, as the default try to provide a highly reproducible resolution process. But sometime, you need more control, e.g. you want to add some OS or JDK specific resolution properties which are sometimes used by Maven and therefore found in dependency artifact metadata. For example, the JavaFX artifacts are known to use OS specific properties. To fix resolution for JavaFX, you could override this task like the following:

   override def resolutionCustomizer = Task.Anon {
     Some( (r: coursier.core.Resolution) =>
       r.withOsInfo(coursier.core.Activation.Os.fromProperties(sys.props.toMap))
     )
   }

Attributes

Definition Classes
Inherited from:
JavaTests
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Resolution parameters, allowing to customize resolution internals\n *\n * This rarely needs to be changed. This allows to disable the new way coursier handles\n * BOMs since coursier 2.1.17 (used in Mill since 0.12.3) for example, with:\n * {{{\n * def resolutionParams = super.resolutionParams()\n * .withEnableDependencyOverrides(Some(false))\n * }}}\n *\n * Note that versions forced with `Dep#forceVersion()` take over forced versions manually\n * set in `resolutionParams`. The former should be favored to force versions in dependency\n * resolution.\n *\n * The Scala version set via `ScalaModule#scalaVersion` also takes over any Scala version\n * provided via `ResolutionParams#scalaVersionOpt`.\n *\n * The default configuration set in `ResolutionParams#defaultConfiguration` is ignored when\n * Mill fetches dependencies to be passed to the compiler (equivalent to Maven \"compile scope\").\n * In that case, it forces the default configuration to be \"compile\". On the other hand, when\n * fetching dependencies for runtime (equivalent to Maven \"runtime scope\"), the value in\n * `ResolutionParams#defaultConfiguration` is used.\n */")
def resolutionParams: Task[ResolutionParams]

Resolution parameters, allowing to customize resolution internals

Resolution parameters, allowing to customize resolution internals

This rarely needs to be changed. This allows to disable the new way coursier handles BOMs since coursier 2.1.17 (used in Mill since 0.12.3) for example, with:

 def resolutionParams = super.resolutionParams()
   .withEnableDependencyOverrides(Some(false))

Note that versions forced with Dep#forceVersion() take over forced versions manually set in resolutionParams. The former should be favored to force versions in dependency resolution.

The Scala version set via ScalaModule#scalaVersion also takes over any Scala version provided via ResolutionParams#scalaVersionOpt.

The default configuration set in ResolutionParams#defaultConfiguration is ignored when Mill fetches dependencies to be passed to the compiler (equivalent to Maven "compile scope"). In that case, it forces the default configuration to be "compile". On the other hand, when fetching dependencies for runtime (equivalent to Maven "runtime scope"), the value in ResolutionParams#defaultConfiguration is used.

Attributes

Inherited from:
CoursierModule
Source
CoursierModule.scala
@Scaladoc(value = "/**\n * Task that resolves the given dependencies using the repositories defined with [[repositoriesTask]].\n *\n * @param deps The dependencies to resolve.\n * @param sources If `true`, resolve source dependencies instead of binary dependencies (JARs).\n * @param artifactTypes If non-empty, pull the passed artifact types rather than the default ones from coursier\n * @return The [[PathRef]]s to the resolved files.\n */")
def resolveDeps(deps: Task[Seq[BoundDep]], sources: Boolean, artifactTypes: Option[Set[Type]]): Task[Seq[PathRef]]

Task that resolves the given dependencies using the repositories defined with repositoriesTask.

Task that resolves the given dependencies using the repositories defined with repositoriesTask.

Value parameters

artifactTypes

If non-empty, pull the passed artifact types rather than the default ones from coursier

deps

The dependencies to resolve.

sources

If true, resolve source dependencies instead of binary dependencies (JARs).

Attributes

Returns

The PathRefs to the resolved files.

Inherited from:
CoursierModule
Source
CoursierModule.scala

Attributes

Definition Classes
Inherited from:
ScalaModule
Source
ScalaModule.scala

Attributes

Inherited from:
ScalaModule
Source
ScalaModule.scala
@Scaladoc(value = "/**\n * Build the assembly for third-party dependencies separate from the current\n * classpath\n *\n * This should allow much faster assembly creation in the common case where\n * third-party dependencies do not change\n */")

Build the assembly for third-party dependencies separate from the current classpath

Build the assembly for third-party dependencies separate from the current classpath

This should allow much faster assembly creation in the common case where third-party dependencies do not change

Attributes

Inherited from:
AssemblyModule
Source
AssemblyModule.scala
@Scaladoc(value = "/**\n * Resolved dependencies\n */")

Resolved dependencies

Resolved dependencies

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
override def resources: Target[Seq[PathRef]]

The folders where the resource files for this module live. If you need resources to be seen by the compiler, use compileResources.

The folders where the resource files for this module live. If you need resources to be seen by the compiler, use compileResources.

Attributes

Definition Classes
Inherited from:
JavaTests
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Runs this module\'s code in a subprocess and waits for it to finish\n */")
def run(args: Task[Args]): Command[Unit]

Runs this module's code in a subprocess and waits for it to finish

Runs this module's code in a subprocess and waits for it to finish

Attributes

Inherited from:
RunModule
Source
RunModule.scala
@Scaladoc(value = "/**\n * Runs this module\'s code in a background process, until it dies or\n * `runBackground` is used again. This lets you continue using Mill while\n * the process is running in the background: editing files, compiling, and\n * only re-starting the background process when you\'re ready.\n *\n * You can also use `-w foo.runBackground` to make Mill watch for changes\n * and automatically recompile your code & restart the background process\n * when ready. This is useful when working on long-running server processes\n * that would otherwise run forever\n */")
def runBackground(args: String*): Command[Unit]

Runs this module's code in a background process, until it dies or runBackground is used again. This lets you continue using Mill while the process is running in the background: editing files, compiling, and only re-starting the background process when you're ready.

Runs this module's code in a background process, until it dies or runBackground is used again. This lets you continue using Mill while the process is running in the background: editing files, compiling, and only re-starting the background process when you're ready.

You can also use -w foo.runBackground to make Mill watch for changes and automatically recompile your code & restart the background process when ready. This is useful when working on long-running server processes that would otherwise run forever

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
override def runBackgroundLogToConsole: Boolean

If true, stdout and stderr of the process executed by runBackground or runMainBackground is sent to mill's stdout/stderr (which usually flow to the console).

If true, stdout and stderr of the process executed by runBackground or runMainBackground is sent to mill's stdout/stderr (which usually flow to the console).

If false, output will be directed to files stdout.log and stderr.log in runBackground.dest (or runMainBackground.dest)

Attributes

Definition Classes
Inherited from:
JavaModule
Source
JavaModule.scala

Attributes

Inherited from:
RunModule
Source
RunModule.scala
def runBackgroundTask(mainClass: Task[String], args: Task[Args]): Task[Unit]

Attributes

Inherited from:
RunModule
Source
RunModule.scala
@Scaladoc(value = "/**\n * All classfiles and resources from upstream modules and dependencies\n * necessary to run this module\'s code after compilation\n */")
override def runClasspath: Target[Seq[PathRef]]

All classfiles and resources from upstream modules and dependencies necessary to run this module's code after compilation

All classfiles and resources from upstream modules and dependencies necessary to run this module's code after compilation

Attributes

Definition Classes
Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Runs this module\'s code in a subprocess and waits for it to finish\n */")
def runForkedTask(mainClass: Task[String], args: Task[Args]): Task[Unit]

Runs this module's code in a subprocess and waits for it to finish

Runs this module's code in a subprocess and waits for it to finish

Attributes

Inherited from:
RunModule
Source
RunModule.scala
@Scaladoc(value = "/**\n * Additional dependencies, only present at runtime. Useful for e.g.\n * selecting different versions of a dependency to use at runtime after your\n * code has already been compiled.\n */")
def runIvyDeps: Target[Seq[Dep]]

Additional dependencies, only present at runtime. Useful for e.g. selecting different versions of a dependency to use at runtime after your code has already been compiled.

Additional dependencies, only present at runtime. Useful for e.g. selecting different versions of a dependency to use at runtime after your code has already been compiled.

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Runs this module\'s code in-process within an isolated classloader. This is\n * faster than `run`, but in exchange you have less isolation between runs\n * since the code can dirty the parent Mill process and potentially leave it\n * in a bad state.\n */")
def runLocal(args: Task[Args]): Command[Unit]

Runs this module's code in-process within an isolated classloader. This is faster than run, but in exchange you have less isolation between runs since the code can dirty the parent Mill process and potentially leave it in a bad state.

Runs this module's code in-process within an isolated classloader. This is faster than run, but in exchange you have less isolation between runs since the code can dirty the parent Mill process and potentially leave it in a bad state.

Attributes

Inherited from:
RunModule
Source
RunModule.scala
def runLocalTask(mainClass: Task[String], args: Task[Args]): Task[Unit]

Attributes

Inherited from:
RunModule
Source
RunModule.scala
@Scaladoc(value = "/**\n * Same as `run`, but lets you specify a main class to run\n */")
override def runMain(mainClass: String, args: String*): Command[Unit]

Same as run, but lets you specify a main class to run

Same as run, but lets you specify a main class to run

Attributes

Definition Classes
Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Same as `runBackground`, but lets you specify a main class to run\n */")
override def runMainBackground(mainClass: String, args: String*): Command[Unit]

Same as runBackground, but lets you specify a main class to run

Same as runBackground, but lets you specify a main class to run

Attributes

Definition Classes
Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Same as `runLocal`, but lets you specify a main class to run\n */")
override def runMainLocal(mainClass: String, args: String*): Command[Unit]

Same as runLocal, but lets you specify a main class to run

Same as runLocal, but lets you specify a main class to run

Attributes

Definition Classes
Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * The runtime-only direct dependencies of this module. These *are* transitive,\n * and so get propagated to downstream modules automatically\n */")

The runtime-only direct dependencies of this module. These are transitive, and so get propagated to downstream modules automatically

The runtime-only direct dependencies of this module. These are transitive, and so get propagated to downstream modules automatically

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Same as [[moduleDeps]] but checked to not contain cycles.\n * Prefer this over using [[moduleDeps]] directly.\n */")

Same as moduleDeps but checked to not contain cycles. Prefer this over using moduleDeps directly.

Same as moduleDeps but checked to not contain cycles. Prefer this over using moduleDeps directly.

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
override def runUseArgsFile: Target[Boolean]

Control whether run*-targets should use an args file to pass command line args, if possible.

Control whether run*-targets should use an args file to pass command line args, if possible.

Attributes

Definition Classes
Inherited from:
JavaTests
Source
JavaModule.scala

Attributes

Inherited from:
RunModule
Source
RunModule.scala
@Scaladoc(value = "/**\n * Classpath of the Scala Compiler & any compiler plugins\n */")

Classpath of the Scala Compiler & any compiler plugins

Classpath of the Scala Compiler & any compiler plugins

Attributes

Inherited from:
ScalaModule
Source
ScalaModule.scala
@Scaladoc(value = "/**\n * Classpath of the scaladoc (or dottydoc) tool.\n */")

Classpath of the scaladoc (or dottydoc) tool.

Classpath of the scaladoc (or dottydoc) tool.

Attributes

Inherited from:
ScalaModule
Source
ScalaModule.scala
@Scaladoc(value = "/**\n * Options to pass directly into Scaladoc.\n */")
def scalaDocOptions: Target[Seq[String]]

Options to pass directly into Scaladoc.

Options to pass directly into Scaladoc.

Attributes

Inherited from:
ScalaModule
Source
ScalaModule.scala
@Scaladoc(value = "/**\n * The ivy coordinates of Scala\'s own standard library\n */")

The ivy coordinates of Scala's own standard library

The ivy coordinates of Scala's own standard library

Attributes

Inherited from:
ScalaModule
Source
ScalaModule.scala

Attributes

Inherited from:
ScalaModule
Source
ScalaModule.scala

Attributes

Inherited from:
ScalaModule
Source
ScalaModule.scala
@Scaladoc(value = "/**\n * Print the scala compile built-in help output.\n * This is equivalent to running `scalac -help`\n *\n * @param args The option to pass to the scala compiler, e.g. \"-Xlint:help\". Default: \"-help\"\n */")
def scalacHelp(args: String*): Command[Unit]

Print the scala compile built-in help output. This is equivalent to running scalac -help

Print the scala compile built-in help output. This is equivalent to running scalac -help

Value parameters

args

The option to pass to the scala compiler, e.g. "-Xlint:help". Default: "-help"

Attributes

Inherited from:
ScalaModule
Source
ScalaModule.scala
override def semanticDbData: Target[PathRef]

Attributes

Definition Classes
Inherited from:
ScalaModule
Source
ScalaModule.scala

Attributes

Inherited from:
SemanticDbJavaModule
Source
SemanticDbJavaModule.scala
override protected def semanticDbPluginClasspath: Target[Seq[PathRef]]

Attributes

Definition Classes
Inherited from:
ScalaModule
Source
ScalaModule.scala
override def semanticDbScalaVersion: Target[String]

Attributes

Definition Classes
Inherited from:
ScalaModule
Source
ScalaModule.scala
def semanticDbVersion: Target[String]

Attributes

Inherited from:
SemanticDbJavaModule
Source
SemanticDbJavaModule.scala
@Scaladoc(value = "/**\n * Show the module dependencies.\n * @param recursive If `true` include all recursive module dependencies, else only show direct dependencies.\n */")
def showModuleDeps(recursive: Boolean): Command[Unit]

Show the module dependencies.

Show the module dependencies.

Value parameters

recursive

If true include all recursive module dependencies, else only show direct dependencies.

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
override def skipIdea: Boolean

Skip Idea project file generation.

Skip Idea project file generation.

Attributes

Definition Classes
Inherited from:
JavaTests
Source
JavaModule.scala
@Scaladoc(value = "/**\n * The source jar, containing only source code for publishing to Maven Central\n */")

The source jar, containing only source code for publishing to Maven Central

The source jar, containing only source code for publishing to Maven Central

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
override def sources: Target[Seq[PathRef]]

The folders where the source files for this module live

The folders where the source files for this module live

Attributes

Definition Classes
Inherited from:
JavaTests
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Discovers and runs the module\'s tests in a subprocess, reporting the\n * results to the console.\n * If no input has changed since the last run, no test were executed.\n *\n * @see [[testForked()]]\n */")
def testCached: Target[(String, Seq[TestResult])]

Discovers and runs the module's tests in a subprocess, reporting the results to the console. If no input has changed since the last run, no test were executed.

Discovers and runs the module's tests in a subprocess, reporting the results to the console. If no input has changed since the last run, no test were executed.

Attributes

See also
Inherited from:
TestModule
Source
TestModule.scala
@Scaladoc(value = "/**\n * Args to be used by [[testCached]].\n */")
def testCachedArgs: Target[Seq[String]]

Args to be used by testCached.

Args to be used by testCached.

Attributes

Inherited from:
TestModule
Source
TestModule.scala
@Scaladoc(value = "/**\n * The classpath containing the tests. This is most likely the output of the compilation target.\n * By default, this uses the result of [[localRunClasspath]], which is most likely the result of a local compilation.\n */")

The classpath containing the tests. This is most likely the output of the compilation target. By default, this uses the result of localRunClasspath, which is most likely the result of a local compilation.

The classpath containing the tests. This is most likely the output of the compilation target. By default, this uses the result of localRunClasspath, which is most likely the result of a local compilation.

Attributes

Inherited from:
TestModule
Source
TestModule.scala
@Scaladoc(value = "/**\n * How the test classes in this module will be split into multiple JVM processes\n * and run in parallel during testing. Defaults to all of them running in one process\n * sequentially, but can be overridden to split them into separate groups that run\n * in parallel.\n */")
def testForkGrouping: Target[Seq[Seq[String]]]

How the test classes in this module will be split into multiple JVM processes and run in parallel during testing. Defaults to all of them running in one process sequentially, but can be overridden to split them into separate groups that run in parallel.

How the test classes in this module will be split into multiple JVM processes and run in parallel during testing. Defaults to all of them running in one process sequentially, but can be overridden to split them into separate groups that run in parallel.

Attributes

Inherited from:
TestModule
Source
TestModule.scala
@Scaladoc(value = "/**\n * Discovers and runs the module\'s tests in a subprocess, reporting the\n * results to the console.\n * @see [[testCached]]\n */")
def testForked(args: String*): Command[(String, Seq[TestResult])]

Discovers and runs the module's tests in a subprocess, reporting the results to the console.

Discovers and runs the module's tests in a subprocess, reporting the results to the console.

Attributes

See also
Inherited from:
TestModule
Source
TestModule.scala
@Scaladoc(value = "/**\n * Discovers and runs the module\'s tests in-process in an isolated classloader,\n * reporting the results to the console\n */")
def testLocal(args: String*): Command[(String, Seq[TestResult])]

Discovers and runs the module's tests in-process in an isolated classloader, reporting the results to the console

Discovers and runs the module's tests in-process in an isolated classloader, reporting the results to the console

Attributes

Inherited from:
TestModule
Source
TestModule.scala
@Scaladoc(value = "/**\n * Discovers and runs the module\'s tests in a subprocess, reporting the\n * results to the console.\n * Arguments before \"--\" will be used as wildcard selector to select\n * test classes, arguments after \"--\" will be passed as regular arguments.\n * `testOnly *foo foobar bar* -- arguments` will test only classes with name\n * (includes package name) 1. end with \"foo\", 2. exactly \"foobar\", 3. start\n * with \"bar\", with \"arguments\" as arguments passing to test framework.\n */")
def testOnly(args: String*): Command[(String, Seq[TestResult])]

Discovers and runs the module's tests in a subprocess, reporting the results to the console. Arguments before "--" will be used as wildcard selector to select test classes, arguments after "--" will be passed as regular arguments. testOnly *foo foobar bar* -- arguments will test only classes with name (includes package name) 1. end with "foo", 2. exactly "foobar", 3. start with "bar", with "arguments" as arguments passing to test framework.

Discovers and runs the module's tests in a subprocess, reporting the results to the console. Arguments before "--" will be used as wildcard selector to select test classes, arguments after "--" will be passed as regular arguments. testOnly *foo foobar bar* -- arguments will test only classes with name (includes package name) 1. end with "foo", 2. exactly "foobar", 3. start with "bar", with "arguments" as arguments passing to test framework.

Attributes

Inherited from:
TestModule
Source
TestModule.scala
@Scaladoc(value = "/**\n * Sets the file name for the generated JUnit-compatible test report.\n * If None is set, no file will be generated.\n */")
def testReportXml: Target[Option[String]]

Sets the file name for the generated JUnit-compatible test report. If None is set, no file will be generated.

Sets the file name for the generated JUnit-compatible test report. If None is set, no file will be generated.

Attributes

Inherited from:
TestModule
Source
TestModule.scala
@Scaladoc(value = "/**\n * Whether to use the test task destination folder as the working directory\n * when running tests. `true` means test subprocess run in the `.dest/sandbox` folder of\n * the test task, providing better isolation and encouragement of best practices\n * (e.g. not reading/writing stuff randomly from the project source tree). `false`\n * means the test subprocess runs in the project root folder, providing weaker\n * isolation.\n */")

Whether to use the test task destination folder as the working directory when running tests. true means test subprocess run in the .dest/sandbox folder of the test task, providing better isolation and encouragement of best practices (e.g. not reading/writing stuff randomly from the project source tree). false means the test subprocess runs in the project root folder, providing weaker isolation.

Whether to use the test task destination folder as the working directory when running tests. true means test subprocess run in the .dest/sandbox folder of the test task, providing better isolation and encouragement of best practices (e.g. not reading/writing stuff randomly from the project source tree). false means the test subprocess runs in the project root folder, providing weaker isolation.

Attributes

Inherited from:
TestModule
Source
TestModule.scala
@Scaladoc(value = "/**\n * Controls whether the TestRunner should receive its arguments via an args-file instead of a long parameter list.\n * Defaults to what `runUseArgsFile` return.\n */")
def testUseArgsFile: Target[Boolean]

Controls whether the TestRunner should receive its arguments via an args-file instead of a long parameter list. Defaults to what runUseArgsFile return.

Controls whether the TestRunner should receive its arguments via an args-file instead of a long parameter list. Defaults to what runUseArgsFile return.

Attributes

Inherited from:
TestModule
Source
TestModule.scala
override def toString: String

Returns a string representation of the object.

Returns a string representation of the object.

The default representation is platform dependent.

Attributes

Returns

a string representation of the object.

Definition Classes
Module -> Any
Inherited from:
Module
Source
Module.scala
@Scaladoc(value = "/**\n * The transitive version of `compileClasspath`\n */")

The transitive version of compileClasspath

The transitive version of compileClasspath

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Coursier project of this module and those of all its transitive module dependencies\n */")
def transitiveCoursierProjects: Task[Seq[Project]]

Coursier project of this module and those of all its transitive module dependencies

Coursier project of this module and those of all its transitive module dependencies

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Almost the same as [[transitiveLocalClasspath]], but using the [[jar]]s instead of [[localClasspath]].\n */")

Almost the same as transitiveLocalClasspath, but using the jars instead of localClasspath.

Almost the same as transitiveLocalClasspath, but using the jars instead of localClasspath.

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * The transitive version of `localClasspath`\n */")

The transitive version of localClasspath

The transitive version of localClasspath

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * All direct and indirect module dependencies of this module, including\n * compile-only dependencies: basically the modules whose classpath are needed\n * at compile-time.\n *\n * Note that `compileModuleDeps` are defined to be non-transitive, so we only\n * look at the direct `compileModuleDeps` when assembling this list\n */")

All direct and indirect module dependencies of this module, including compile-only dependencies: basically the modules whose classpath are needed at compile-time.

All direct and indirect module dependencies of this module, including compile-only dependencies: basically the modules whose classpath are needed at compile-time.

Note that compileModuleDeps are defined to be non-transitive, so we only look at the direct compileModuleDeps when assembling this list

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Like `recursiveModuleDeps` but also include the module itself,\n * basically the modules whose classpath are needed at runtime\n */")

Like recursiveModuleDeps but also include the module itself, basically the modules whose classpath are needed at runtime

Like recursiveModuleDeps but also include the module itself, basically the modules whose classpath are needed at runtime

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * All direct and indirect module dependencies of this module, including\n * compile-only dependencies: basically the modules whose classpath are needed\n * at runtime.\n *\n * Note that `runModuleDeps` are defined to be transitive\n */")

All direct and indirect module dependencies of this module, including compile-only dependencies: basically the modules whose classpath are needed at runtime.

All direct and indirect module dependencies of this module, including compile-only dependencies: basically the modules whose classpath are needed at runtime.

Note that runModuleDeps are defined to be transitive

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Like `recursiveModuleDeps` but also include the module itself,\n * basically the modules whose classpath are needed at runtime\n */")

Like recursiveModuleDeps but also include the module itself, basically the modules whose classpath are needed at runtime

Like recursiveModuleDeps but also include the module itself, basically the modules whose classpath are needed at runtime

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Additional jars, classfiles or resources to add to the classpath directly\n * from disk rather than being downloaded from Maven Central or other package\n * repositories\n */")

Additional jars, classfiles or resources to add to the classpath directly from disk rather than being downloaded from Maven Central or other package repositories

Additional jars, classfiles or resources to add to the classpath directly from disk rather than being downloaded from Maven Central or other package repositories

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * Build the assembly for upstream dependencies separate from the current\n * classpath\n *\n * This should allow much faster assembly creation in the common case where\n * upstream dependencies do not change\n */")

Build the assembly for upstream dependencies separate from the current classpath

Build the assembly for upstream dependencies separate from the current classpath

This should allow much faster assembly creation in the common case where upstream dependencies do not change

Attributes

Inherited from:
AssemblyModule
Source
AssemblyModule.scala
@Scaladoc(value = "/**\n * All upstream classfiles and resources necessary to build and executable\n * assembly, but without this module\'s contribution\n */")

All upstream classfiles and resources necessary to build and executable assembly, but without this module's contribution

All upstream classfiles and resources necessary to build and executable assembly, but without this module's contribution

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * The upstream compilation output of all this module\'s upstream modules\n */")

The upstream compilation output of all this module's upstream modules

The upstream compilation output of all this module's upstream modules

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala

Upstream classfiles and resources from third-party libraries necessary to build an executable assembly

Upstream classfiles and resources from third-party libraries necessary to build an executable assembly

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala

Upstream classfiles and resources from locally-built modules necessary to build an executable assembly, but without this module's contribution

Upstream classfiles and resources from locally-built modules necessary to build an executable assembly, but without this module's contribution

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
override def zincAuxiliaryClassFileExtensions: Target[Seq[String]]

Files extensions that need to be managed by Zinc together with class files. This means, if zinc needs to remove a class file, it will also remove files which match the class file basename and a listed file extension.

Files extensions that need to be managed by Zinc together with class files. This means, if zinc needs to remove a class file, it will also remove files which match the class file basename and a listed file extension.

Attributes

Definition Classes
Inherited from:
ScalaModule
Source
ScalaModule.scala

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala
@Scaladoc(value = "/**\n * If `true`, we always show problems (errors, warnings, infos) found in all source files, even when they have not changed since the previous incremental compilation.\n * When `false`, we report only problems for files which we re-compiled.\n */")

If true, we always show problems (errors, warnings, infos) found in all source files, even when they have not changed since the previous incremental compilation. When false, we report only problems for files which we re-compiled.

If true, we always show problems (errors, warnings, infos) found in all source files, even when they have not changed since the previous incremental compilation. When false, we report only problems for files which we re-compiled.

Attributes

Inherited from:
JavaModule
Source
JavaModule.scala

Attributes

Definition Classes
Inherited from:
JavaTests
Source
JavaModule.scala

Inherited and Abstract methods

@Scaladoc(value = "/**\n * The test framework to use.\n *\n * For convenience, you can also mix-in one of these predefined traits:\n * - [[TestModule.Junit4]]\n * - [[TestModule.Junit5]]\n * - [[TestModule.Munit]]\n * - [[TestModule.ScalaTest]]\n * - [[TestModule.Specs2]]\n * - [[TestModule.TestNg]]\n * - [[TestModule.Utest]]\n * - [[TestModule.Weaver]]\n * - [[TestModule.ZioTest]]\n */")
def testFramework: Target[String]

The test framework to use.

The test framework to use.

For convenience, you can also mix-in one of these predefined traits:

Attributes

Inherited from:
TestModule
Source
TestModule.scala

Implicits

Inherited implicits

implicit def moduleNestedCtx: Nested

Attributes

Inherited from:
Module
Source
Module.scala