Yeoman - A Spring Initializr alternative

Setting up a skeleton for a spring boot application can be done quite fast without any tools. Only one gradle build file and one startup class are enough to bootstrap the entire application. But what if we want to quickly create a skeleton for an application with some more dependencies? We could do it manually, but there are a few alternatives to this.

start.spring.io

Spring IO brings us their own initializr. It's easy to use, but requires you to go online, tick all your settings and download the result. Of course, we could also use boot-cli, but what about alternatives?

Yeoman

from the Yeoman website:

With so many great tools available to front-end web developers these days it can sometimes be difficult to understand how they all fit together. Deciding on a workflow that you’re happy with is often a very personal endeavour, but getting started isn’t always easy. Yeoman aims to solve this problem by scaffolding workflows for creating modern webapps, while at the same time mixing in many of the best practices that have evolved within the industry.

Prerequisites

To use yeoman, you'll need to have NPM installed. Details on how to install this nifty package manager can be found on their website

Installing Yeoman

After installing npm, open up a command shell and fire the next command.

npm install -g yo

This will install Yeoman and all of its dependencies.

Installing the generator for spring boot

Now that yeoman is installed, install the generator for spring.

npm install -g generator-spring

Running the generator

Running the generator is really easy and straightforward.

yo spring

This will initialize the setup. All you'll have to do is choose a version of spring-boot, check some extra dependencies if you need them and choose a name for your project. The entire skeleton will be generated for you!

Other generators

Of course, there's already a wide variety of generators available for you, created by the community. For an entire list of community created generators, you can visit their website