The purpose of this project is to help you get started with Spock. The project includes several example specifications and build scripts for Ant, Gradle, and Maven. It also makes it easy to create an Eclipse or IDEA project, allowing you to run the example specs from within your IDE.
The purpose of this project is to help you get started with Spock. The project includes several example specifications and build scripts for Ant, Gradle, and Maven. It also makes it easy to create an Eclipse or IDEA project, allowing you to run the example specs from within your IDE.
All three builds (Ant, Gradle, Maven) will automatically download all required dependencies, compile the project, and finally run the example specs. The Gradle build goes one step further by bootstrapping itself, alleviating the need to have a build tool preinstalled.
All three builds (Ant, Gradle, Maven) will automatically download all required dependencies, compile the project, and finally run the example specs. The Gradle build goes one step further by bootstrapping itself, alleviating the need to have a build tool preinstalled.
Prerequisites
Prerequisites
@ -12,57 +13,69 @@ Prerequisites
Building with Ant
Building with Ant
-----------------
-----------------
Type: ant clean test
Type:
ant clean test
Downloaded files will be stored in the local Maven repository (typically "<user_home>/.m2/repository").
Downloaded files will be stored in the local Maven repository (typically *user_home*`/.m2/repository`).
Building with Gradle
Building with Gradle
--------------------
--------------------
Type: ./gradlew clean test
Type:
Downloaded files (including the Gradle distribution itself) will be stored in the Gradle user home directory (typically "<user_home>/.gradle").
./gradlew clean test
Downloaded files (including the Gradle distribution itself) will be stored in the Gradle user home directory (typically *user_home*`/.gradle`).
Building with Maven
Building with Maven
-------------------
-------------------
Type: mvn clean test
Type:
mvn clean test
Downloaded files will be stored in the local Maven repository (typically "<user_home>/.m2/repository").
Downloaded files will be stored in the local Maven repository (typically *user_home*`/.m2/repository`).
Creating an Eclipse project
Creating an Eclipse project
---------------------------
---------------------------
Type: ./gradlew cleanEclipse eclipse
Type:
Make sure you have a recent version of the Groovy Eclipse plugin installed. After importing the generated project into a workspace, go to Preferences->Java->Build Path->Classpath Variables and add a variable named GRADLE_CACHE with value "<user_home>/.gradle/cache". (If you have an environment variable GRADLE_USER_HOME set, the correct value is "<GRADLE_USER_HOME>/cache".) You should now be able to build the project, and to run the specs like you would run a JUnit test. See http://wiki.spockframework.org/GettingStarted#Eclipse for more information on how to get started with Spock and Eclipse.
./gradlew cleanEclipse eclipse
Make sure you have a recent version of the Groovy Eclipse plugin installed. After importing the generated project into a workspace, go to Preferences->Java->Build Path->Classpath Variables and add a variable named `GRADLE_CACHE` with value *user_home*`/.gradle/cache`. (If you have an environment variable `GRADLE_USER_HOME` set, the correct value is *GRADLE_USER_HOME*`/cache`.) You should now be able to build the project, and to run the specs like you would run a JUnit test. See http://wiki.spockframework.org/GettingStarted#Eclipse for more information on how to get started with Spock and Eclipse.
Creating an IDEA project
Creating an IDEA project
---------------------------
---------------------------
Type: ./gradlew cleanIdea idea
Type:
./gradlew cleanIdea idea
Open the generated project in IDEA. You should now be able to build the project, and to run the specs like you would run a JUnit test.
Open the generated project in IDEA. You should now be able to build the project, and to run the specs like you would run a JUnit test.
Getting hold of the Jars used in this project
Getting hold of the Jars used in this project
---------------------------------------------
---------------------------------------------
Type: ./gradlew collectJars
Type:
The Jars will be copied to build/output/lib. The comments in build.gradle explain what they are needed for.
./gradlew collectJars
The Jars will be copied to `build/output/lib`. The comments in `build.gradle` explain what they are needed for.
Further Resources
Further Resources
-----------------
-----------------
Spock homepage http://spockframework.org
Spock web console http://meet.spockframework.org
* [Spock homepage](http://spockframework.org)
Main documentation http://wiki.spockframework.org/SpockBasics
* [Spock web console](http://meet.spockframework.org)
User discussion group http://forum.spockframework.org