Mill is a build tool that improves upon the tools traditionally used in the JVM ecosystem:
-
Simpler than Maven, with declarative
build.mill.yamlfiles often 1/10th the lines of apom.xml -
Easier than Gradle, with object-oriented programmable builds Java developers can intuitively understand
-
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:
Here is some quick example, so that you can imagine how it looks:
extends: JavaModule
mvnDeps:
- org.thymeleaf:thymeleaf:3.1.1.RELEASE
- org.slf4j:slf4j-nop:2.0.7> ./mill compile # compile sources into classfiles
...
compiling 1 Java source to...
> ./mill run --text hello
<h1>hello</h1>
> ./mill test
...
Test foo.FooTest.testEscaping finished, ...
Test foo.FooTest.testSimple finished, ...
Test run foo.FooTest finished: 0 failed, 0 ignored, 2 total, ...