This sample demonstrates how you can create your own service easily as described in the reference documentation.
You can start the service from the command line:
$ ../mvnw spring-boot:run
Or, better yet, run the ServiceApplication
main method from your favourite IDE.
If you go to localhost:8080
with your browser, you’ll get a json document that describes
the capabilities of the service. There are several ways you can generate a project.
If you have HTTPie
installed, try the following:
$ http :8080
If you prefer to use cURL
, try this instead:
$ curl localhost:8080
If you have the spring
CLI installed, you can also use it as follows:
$ spring init --target http://localhost:8080 --list
Finally, you can configure your IDE to point to another service instance.
There are two main customizations to the sample.
First, ServiceApplication
has a dedicated strategy to update the metadata with the available Spring Boot versions from https://spring.io
.
When you issue your first request, you should see something like the following:
Fetching Spring Boot metadata from https://api.spring.io/projects/spring-boot/releases
On further request, you won’t see this log entry as the content is cached. There are no expiration set, so the available versions won’t change until you restart the service.
The configuration in application.yml
is very simple with a single web
dependency that brings spring-boot-starter-web
.
The default groupId
for generated projects has been customized to org.acme
.
You can experiment by adding more dependencies or other elements that drive how projects are generated.