This repository configures a Spring Initializr instance with a custom UI running at https://start.spring.io. The following modules are available:
-
start-client
: client-side assets -
start-site
: server infrastructure and metadata configuration -
start-site-verification
: tests to verify the validity of the metadata
You need Java 1.8 and a bash-like shell.
Invoke the build at the root of the project
$ ./mvnw clean install
The project also includes a number of longer-running verification tests. They
can be built and run using the verification
profile:
$ ./mvnw -Pverification clean install
The project’s other tests are not included in the verification
profile. All of
the project’s tests can be run using the full
profile:
$ ./mvnw -Pfull clean install
You can easily start the app as any other Spring Boot app:
$ cd start-site $ ../mvnw spring-boot:run
You should be able to import the project into your IDE with no problems. Once there you
can run the StartApplication
from its main method and debug it. If you also need to
work on the library, adding the initializr
project in your workspace would make sure
to reload the app whenever you make any change.
This is the recommended way to operate while you are developing the application, especially the UI.
If you are on a Mac and using homebrew, install the Cloud Foundry CLI:
$ brew install cloudfoundry-cli
Alternatively, download a suitable binary for your platform from Pivotal Web Services.
You should ensure that the application name and URL (name and host values) are
suitable for your environment before running cf push
.
First, make sure that you have built the application, then make sure first that the jar has been created:
$ cd start-site $ ../mvnw package
The project creates a regular library jar and a repackaged archive that can be used to
start the application with the exec
classifier. Once the build as completed, you can
push the application:
$ cf push your-start -p target/start-site-exec.jar
The start.spring.io website is Open Source software released under the Apache 2.0 license.