Gradle, Maven, huh!?

Gradle and Maven are both tools you use to build your code. In their family you’ll perhaps recognize one of make, cmake, slang, scons, rake, sbt, grunt, and the list goes on …​.

Werval support both of Gradle and Maven hence the Getting Started guide being available for each one of them.

Choose your side of the force

Our advice

TL;DR We recommend using Gradle.

Everything Werval is automated using Gradle, from the SDK build to the baking and publication of a website embedding versioned documentation for past, current and development releases. The only exception is the Maven support that is built using, well, Maven.

We love Gradle. Mainly for its DSL expressiveness and extensibility. But, Maven is very commonly used and changing the build tool used in an organisation can be challenging. We implement new features for Gradle and port them to Maven support afterwards, if even possible. In other words, work on the Werval Maven support is motivated by ease of adoption only.

So, do we need to say more? Gradle is where our build love goes.

Choose your side of the force.


If you prefer another build tool or even want to write shell scripts on your own, its still possible to use Werval.

A Werval application is a plain old java program (main class) so it’s a no brainer to run it in production mode. Tests of Werval applications are simple JUnit tests, again, no brainer to run.

Obvisouly, the classpath should be set up properly with regard to your application dependencies. Finally, to make Werval development mode work in another build tool you’ll probably need to write some code. Have a look at the Gradle and Maven support source code for insights in theses matter.

If you get to something reusable, please contribute it. We are very interested in such a contribution.