The Spring Framework provides a comprehensive programming and configuration model for modern Java-based enterprise applications -- on any kind of deployment platform. A key element of Spring is infrastructural support at the application level: Spring focuses on the "plumbing" of enterprise applications so that teams can focus on application-level business logic, without unnecessary ties to specific deployment environments.
The framework also serves as the foundation for Spring Integration, Spring Batch and the rest of the Spring family of projects. Browse the repositories under the Spring organization on GitHub for a full list.
Code of Conduct
Report issues via the Spring Framework JIRA. Understand our issue management process by reading about the lifecycle of an issue. Think you've found a bug? Please consider submitting a reproduction project via the spring-framework-issues GitHub repository. The readme there provides simple step-by-step instructions.
Building from Source
The Spring Framework uses a Gradle-based build system. In the instructions
./gradlew is invoked from the root of the source tree and serves as
a cross-platform, self-contained bootstrap mechanism for the build.
Be sure that your
JAVA_HOME environment variable points to the
extracted from the JDK download.
Check out sources
git clone firstname.lastname@example.org:spring-projects/spring-framework.git
Import sources into your IDE
./import-into-eclipse.sh or read
import-into-idea.md as appropriate.
Note: Per the prerequisites above, ensure that you have JDK 8 configured properly in your IDE.
Install all spring-* jars into your local Maven cache
Compile and test; build all jars, distribution zips, and docs
... and discover more commands with
./gradlew tasks. See also the Gradle
build and release FAQ.
Staying in Touch
The Spring Framework is released under version 2.0 of the Apache License.