Extensions to Spring MVC for developing mobile web applications.
Latest commit dfd4f87 Nov 26, 2015 @royclarkson royclarkson Merge pull request #28 from evpaassen/fix-typos
Fix exception message in DeviceUtils class
Failed to load latest commit information.
gradle/wrapper Upgrade to Gradle 2.4 May 6, 2015
spring-mobile-device/src Fix exception message in DeviceUtils class. Sep 4, 2015
src Upate reference documentation Jun 22, 2015
.gitignore Enhance Device with DevicePlatform resolving Apr 28, 2015
LICENSE MOBILE-29 Updated to latest Gradle build configuration Mar 14, 2012
README.md Update README May 6, 2015
gradle.properties Increment version to 1.2.0.BUILD-SNAPSHOT Oct 3, 2013
gradlew.bat MOBILE-29 Updated to latest Gradle build configuration Mar 15, 2012
publish-maven.gradle Update maven metadata May 6, 2015
settings.gradle Standardize on double quotes in Gradle files Jan 23, 2014


Spring Mobile

"Build Status"

Spring Mobile is an extension of the Spring Framework and Spring Web MVC that aims to simplify the development of mobile web applications.


  • A device resolver abstraction for server-side detection of mobile and tablet devices

  • Site preference management that allows the user to indicate if he or she prefers a "normal", "mobile", or "tablet" experience

  • A site switcher capable of switching the user to the most appropriate site, either mobile, tablet, or normal, based on his or her device and optionally indicated site preference

  • Device aware view management for organizing and managing different views for specific devices

Download 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.

Note: You do not need to include all three repositories, rather select the one that corresponds to the release type of the dependency.


dependencies {
repositories {
    maven { url "https://repo.spring.io/release" }
    maven { url "https://repo.spring.io/milestone" }
    maven { url "https://repo.spring.io/snapshot" }



        <name>Spring Repository</name>
        <name>Spring Milestones</name>
        <name>Spring Snapshots</name>


See the current Javadoc and reference docs.

Sample Applications

Several example projects are available in the samples repository.

Getting Started Guides

The spring.io web site contains many getting started guides that cover a broad range of topics.


Review the spring-mobile tag on Stack Overflow.

Issue Tracking

Report issues via the Spring Mobile JIRA. While JIRA is preferred, GitHub issues are also welcome. Understand our issue management process by reading about the lifecycle of an issue.

Build from Source

  1. Clone the repository from GitHub:

    $ git clone https://github.com/spring-projects/spring-mobile.git
  2. Navigate into the cloned repository directory:

    $ cd spring-mobile
  3. The project uses Gradle to build:

    $ ./gradlew build
  4. Install jars into your local Maven cache (optional)

    $ ./gradlew install

Import Source into your IDE


  1. To generate Eclipse metadata (.classpath and .project files):

    $ ./gradlew eclipse
  2. Once complete, you may then import the projects into Eclipse as usual:

    File -> Import -> Existing projects into workspace

Note: Spring Tool Suite has built in support for Gradle, and you can simply import as Gradle projects.


Generate IDEA metadata (.iml and .ipr files):

$ ./gradlew idea


Pull requests are welcome. See the contributor guidelines for details.

Stay in Touch

Follow @SpringCentral as well as @SpringFramework on Twitter. In-depth articles can be found at The Spring Blog, and releases are announced via our news feed.


Spring Mobile is released under version 2.0 of the Apache License.