com-lihaoyi
mill
Scala

A better build tool for Java, Scala and Kotlin: Simpler than Maven, easier than Gradle, with 3-7x faster dev workflows than other JVM build tools

Last updated Jul 6, 2026
2.8k
Stars
441
Forks
241
Issues
+4
Stars/day
Attention Score
95
Language breakdown
Scala 88.7%
Java 4.9%
Kotlin 1.7%
CSS 1.2%
TypeScript 0.9%
Python 0.7%
โ–ธ Files click to expand
README

= image:website/docs/logo.svg[title=Mill Logo] Mill: A Better Build Tool for Java, Scala, & Kotlin :mill-stable-version: 1.1.7 :link-github: https://github.com/com-lihaoyi/mill :link-current-doc-site: https://mill-build.org :link-mill-moduledefs: https://github.com/com-lihaoyi/mill-moduledefs // customize appearance on GitHub :idprefix: :idseparator: - :toc: :toc-placement: preamble ifndef::env-github[] :icons: font endif::[] ifdef::env-github[] :caution-caption: :fire: :important-caption: :exclamation: :note-caption: :paperclip: :tip-caption: :bulb: :warning-caption: :warning: endif::[]

link:changelog.adoc[image:https://img.shields.io/maven-central/v/com.lihaoyi/mill-dist?label=stable-version&versionSuffix={mill-stable-version}[d]] https://central.sonatype.com/artifact/com.lihaoyi/mill-dist[image:https://img.shields.io/maven-central/v/com.lihaoyi/mill-dist?label=unstable-dev-version[Maven Central Version]]

Mill is a build tool that improves upon the tools traditionally used in the JVM ecosystem:

  • https://mill-build.org/mill/comparisons/maven.html[xref:comparisons/maven.adoc][Simpler than Maven],
with declarative build.mill.yaml files often 1/10th the lines of a pom.xml
  • https://mill-build.org/mill/comparisons/gradle.html[xref:comparisons/gradle.adoc][Easier than Gradle],
with object-oriented programmable builds Java developers can intuitively understand
  • https://mill-build.org/mill/comparisons/performance.html[xref:comparisons/performance.adoc][Fastest builds on the JVM],
3-7x faster than Maven or Gradle due to aggressive caching & parallelism

Although the Java compiler is very fast and the Java language is easy to learn, JVM build tools have a reputation for being sluggish, complicated, and confusing. Mill tries to offer a better alternative that gives the Java platform the developer experience it deserves.

If you want to use Mill in your own projects, check out our documentation:

  • {link-current-doc-site}[Documentation]
Here is some quick example, so that you can imagine how it looks:

[source,yaml,subs="verbatim,attributes"]


extends: JavaModule mvnDeps:
  • org.thymeleaf:thymeleaf:3.1.1.RELEASE
  • org.slf4j:slf4j-nop:2.0.7

[source,console]


./mill compile # compile sources into classfiles
... compiling 1 Java source to...
./mill run --text hello

hello

./mill test
... Test foo.FooTest.testEscaping finished, ... Test foo.FooTest.testSimple finished, ... Test run foo.FooTest finished: 0 failed, 0 ignored, 2 total, ...
  • link:developer.adoc[Developer Documentation]
  • link:changelog.adoc[Changelog]

ยฉ 2026 GitRepoTrend ยท com-lihaoyi/mill ยท Updated daily from GitHub