Spring for Android is an extension of the Spring Framework that aims to simplify the development of native Android applications.
-
Clone the repository from GitHub:
$ git clone git://github.com/SpringSource/spring-android.git
-
Navigate into the cloned repository directory:
$ cd spring-android
-
The project uses Gradle to build:
$ ./gradlew build
To generate Eclipse metadata (.classpath and .project files), use the following Gradle task:
$ ./gradlew eclipse
Once complete, you may then import the projects into Eclipse as usual:
File -> Import -> Existing projects into workspace
Alternatively, SpringSource Tool Suite has built in support for Gradle, and you can simply import as Gradle projects.
To generate IDEA metadata (.iml and .ipr files), use the following Gradle task:
$ ./gradlew idea
Use the following Gradle task to build the JavaDoc
$ ./gradlew :docs:api
Note: The result will be available in 'docs/build/api'.
There are three Android Test Projects located in the repository that correspond to the three Spring for Android Modules (Core, Rest Template, and Auth). These projects are executed separately from the Gradle build process. To run the suite of tests, perform the following steps. A parent POM located in the root of the repository will execute each test project on all attached devices and emulators.
-
Build Spring for Android JARs and install them to the local Maven repository:
$ ./gradlew build install
-
The tests are run using the Android Maven Plugin:
$ mvn clean install
Note: Each test project can also be executed individually, by running the previous command from within the respective test project's directory.
The Android Maven Plugin makes it possible to build Android applications utilizing the power of Maven dependency management.
Spring for Android consists of three modules: Core, Rest Template, and Auth. These are available via the following Maven dependencies:
<dependency>
<groupId>org.springframework.android</groupId>
<artifactId>spring-android-core</artifactId>
<version>${org.springframework.android-version}</version>
</dependency>
<dependency>
<groupId>org.springframework.android</groupId>
<artifactId>spring-android-rest-template</artifactId>
<version>${org.springframework.android-version}</version>
</dependency>
<dependency>
<groupId>org.springframework.android</groupId>
<artifactId>spring-android-auth</artifactId>
<version>${org.springframework.android-version}</version>
</dependency>
Three primary repositories are provided by SpringSource: release, milestone, and snapshot. More information can be found at the SpringSource Repository FAQ.
<repository>
<id>springsource-repo</id>
<name>SpringSource Repository</name>
<url>http://repo.springsource.org/release</url>
</repository>
<repository>
<id>springsource-milestone</id>
<name>SpringSource Milestone Repository</name>
<url>http://repo.springsource.org/milestone</url>
</repository>
<repository>
<id>springsource-snapshot</id>
<name>SpringSource Snapshot Repository</name>
<url>http://repo.springsource.org/snapshot</url>
</repository>