- Notifications
You must be signed in to change notification settings - Fork1.8k
A quickstart generator for Spring projects
License
spring-io/initializr
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Spring Initializr provides an extensible API to generate JVM-based projects withimplementations for several common concepts:
Basic language generation for Java, Kotlin and Groovy.
Build system abstraction with implementations for Apache Maven and Gradle.
.gitignore
support.Several hook-points for custom resources generations.
The various options for the projects are expressed in a metadata model that allows you toconfigure the list of dependencies, supported JVM and platform versions, etc.
Spring Initializr also exposes web endpoints to generate an actual project and alsoserve its metadata in a well-known format to allow third-party clients to provide thenecessary assistance.
A set of optional conventions for Spring Boot projects is provided and are used in ourproduction instance athttps://start.spring.io. To better understand how ourservice is configured, you may want to checkthe companion project and, inparticular, theconfiguration of ourinstance. Such configuration is also described in details in the documentation.
Note | While Spring Initializr is available on Maven Central, it is still in a pre 1.0state and major refactoring are still possible. Check themilestones page for an overview of thechanges. |
The reference documentation is available inHTML format.
Spring Initializr has the following modules:
initializr-actuator
: optional module to provide additional information and statisticson project generation.initializr-bom
: provides a Bill of Materials for easier dependency management in yourproject.initializr-docs
: documentation.initializr-generator
: core project generation library.initializr-generator-spring
: optional module defining the conventions for a typicalSpring Boot project. Can be reused or replaced by your own conventions.initializr-generator-test
: test infrastructure for project generation.initializr-metadata
: metadata infrastructure for various aspects of the project.initializr-service-sample
: showcases a basic custom instance.initializr-version-resolver
: optional module to extract version numbers from anarbitrary POM.initializr-web
: web endpoints for third party clients.
Spring Initializr can be used as follows:
On the command-line withthe Spring Boot CLI or simply with
cURL
orHTTPie
.In your IDE if you are using STS, IntelliJ IDEA Ultimate, NetBeans (withthis plugin) or VSCode (withthe
vscode-spring-initializr
plugin).With a custom Web UI (check ours athttps://start.spring.io).
There are other command-line integrations out there and you can also build your own!
You can easily run your own instance. Theinitializr-web
modules uses Spring Bootso when it is added to a project, it will trigger the necessary auto-configuration todeploy the service.
Theinitializr-service-sample
showcases a basic custom instance with dedicated metadata.
Spring Initializr is Open Source software released under theApache 2.0 license.
About
A quickstart generator for Spring projects
Resources
License
Code of conduct
Contributing
Security policy
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.