Go to file
Philippe Marschall 2313c9a007 Introduce java.nio.file.Path based Resource
Develop new org.springframework.core.io.Resource implementation
backed by java.nio.file.Path. Primarily developed to allow custom
file system implementations to be used with Spring.

Since the minimum requirement for Spring is still Java 6 the
existing FileSystemResource can't be retrofitted (and no #getPath
method can be added to the Resource interface).

Unlike FileSystemResource, PathResource delegates to the underlying
file system instead of StringUtils. It has therefore slightly
different semantics. First, when building relative resources via
createRelative the relative path will apply to this path (like URL or
Unix). Second, equality is delegated to the underlying file system
provider so it's case-insensitive on Windows.

Issue: SPR-10608
2013-06-03 16:25:45 -07:00
.settings/gradle Remove spring-asm and inline ASM 4 into spring-core 2012-08-10 00:36:49 +02:00
buildSrc/src/main Fix MergePlugin 2013-05-22 14:57:22 -05:00
gradle Update to Gradle 1.6 2013-05-14 12:24:00 -05:00
spring-aop/src Fix typo {explictly => explicitly} 2013-05-31 08:22:36 +02:00
spring-aspects Update to Gradle 1.6 2013-05-14 12:24:00 -05:00
spring-beans/src Avoid unnecessary creation of default StandardEnvironment instances 2013-05-15 23:41:32 +02:00
spring-context Support EnvironmentAware ImportSelector/Registrar 2013-06-03 12:19:47 -07:00
spring-context-support/src Add @Override to remaining source files 2013-05-13 17:04:56 -05:00
spring-core/src Introduce java.nio.file.Path based Resource 2013-06-03 16:25:45 -07:00
spring-expression Add @Override to remaining source files 2013-05-13 17:04:56 -05:00
spring-instrument/src Update Apache license headers for affected sources 2012-12-28 23:09:31 +01:00
spring-instrument-tomcat/src Update Apache license headers for affected sources 2012-12-28 23:09:31 +01:00
spring-jdbc/src Fixed BeanPropertyRowMapper to only prefix actual upper-case letters with underscores 2013-05-16 14:33:15 +02:00
spring-jms/src Add @Override to remaining source files 2013-05-13 17:04:56 -05:00
spring-orm/src Fix typo {explictly => explicitly} 2013-05-31 08:22:36 +02:00
spring-orm-hibernate4/src Add @Override to remaining source files 2013-05-13 17:04:56 -05:00
spring-oxm Add @Override to remaining source files 2013-05-13 17:04:56 -05:00
spring-test Add @Override to remaining source files 2013-05-13 17:04:56 -05:00
spring-test-mvc/src Add @Override to remaining source files 2013-05-13 17:04:56 -05:00
spring-tx/src Add @Override to remaining source files 2013-05-13 17:04:56 -05:00
spring-web/src Avoid NPE in ContextLoader when dealing with an untyped ApplicationContextInitializer 2013-05-16 16:09:54 +02:00
spring-webmvc/src Introduced "jsonPrefix" bean property 2013-05-15 23:54:51 +02:00
spring-webmvc-portlet/src Replaced Map synchronization with ConcurrentHashMap to avoid session access deadlocks 2013-05-16 14:33:14 +02:00
spring-webmvc-tiles3/src Add @Override to remaining source files 2013-05-13 17:04:56 -05:00
spring-websocket/src Fix bug in WebSocketClient implementations 2013-05-16 19:12:27 -04:00
src Fixed typo in docbook id 2013-05-28 14:25:57 -07:00
.gitignore Fix test for daylight savings glitch 2013-03-10 10:03:15 -07:00
CONTRIBUTING.md Instruct contributors to branch from master 2013-05-28 13:54:14 +03:00
README.md Fix minor typo in README.md 2013-05-26 14:28:37 +02:00
build.gradle Replace MaxPermSize use in build scripts 2013-06-03 14:09:33 -07:00
gradle.properties Increment version to 4.0.0.BUILD-SNAPSHOT 2013-05-17 09:55:02 -07:00
gradlew Replace MaxPermSize use in build scripts 2013-06-03 14:09:33 -07:00
gradlew.bat Replace MaxPermSize use in build scripts 2013-06-03 14:09:33 -07:00
import-into-eclipse.bat Create import-into-eclipse.bat for Windows users 2012-11-05 12:21:42 -08:00
import-into-eclipse.sh Update STS version used to test Eclipse setup script 2012-09-11 17:32:30 +02:00
import-into-idea.md Skip creation of IDEA metadata for spring-aspects 2013-01-03 19:19:24 +01:00
settings.gradle Add spring-websocket module 2013-04-15 11:03:23 -04:00

README.md

Spring Framework

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 SpringSource organization on GitHub for a full list.

Downloading artifacts

See downloading Spring artifacts for Maven repository information. Unable to use Maven or other transitive dependency management tools? See building a distribution with dependencies.

Documentation

See the current Javadoc and reference docs.

Getting support

Check out the Spring forums and the spring and spring-mvc tags on Stack Overflow. Commercial support is available too.

Issue Tracking

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 below, ./gradlew is invoked from the root of the source tree and serves as a cross-platform, self-contained bootstrap mechanism for the build.

prerequisites

Git and Early Access build of OpenJDK 1.8 build 88

Note: Do not use the "lambda" edition of JDK b88 when building the framework, as it still causes some errors. It should be fine, however, to run against various versions of OpenJDK 1.8, lambda or otherwise.

Be sure that your JAVA_HOME environment variable points to the jdk1.8.0 folder extracted from the JDK download.

check out sources

git clone git://github.com/SpringSource/spring-framework.git

import sources into your IDE

Run ./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

./gradlew install

compile and test, build all jars, distribution zips and docs

./gradlew build

... and discover more commands with ./gradlew tasks. See also the Gradle build and release FAQ.

Contributing

Pull requests are welcome; see the contributor guidelines for details.

Staying in touch

Follow @springframework and its team members on Twitter. In-depth articles can be found at the SpringSource team blog, and releases are announced via our news feed.

License

The Spring Framework is released under version 2.0 of the Apache License.