diff --git a/.travis.yml b/.travis.yml
index e37d5f3f95..236b9a9a69 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -22,28 +22,6 @@ jobs:
script:
- mvn clean install -DskipTests=true
- mvn javadoc:aggregate
- - jdk: oraclejdk8
- env: ANDROID_EXAMPLES=true
- language: android
- android:
- components:
- - tools
- - platform-tools
- - tools
- - build-tools-26.0.0
- - android-21
- - sys-img-armeabi-v7a-android-21
- before_install:
- - echo no | android create avd --force -n test -t android-21 --abi armeabi-v7a
- - emulator -avd test -no-skin -no-audio -no-window &
- install:
- - mvn -q install --also-make --projects android,picocontainer -DskipTests=true
- -Dmaven.javadoc.skip=true
- before_script:
- - android-wait-for-emulator
- script:
- - mvn install --activate-profiles android-examples --projects examples/android
- --also-make-dependents -Dandroid.device=test
- stage: deploy
jdk: oraclejdk8
script:
diff --git a/android/.travis.yml b/android/.travis.yml
new file mode 100644
index 0000000000..23df2d1541
--- /dev/null
+++ b/android/.travis.yml
@@ -0,0 +1,34 @@
+language: android
+jdk: oraclejdk8
+sudo: false
+
+cache:
+ directories:
+ - "$HOME/.m2"
+
+before_cache:
+- rm -rf $HOME/.m2/repository/io/cucumber
+
+android:
+ components:
+ - tools
+ - platform-tools
+ - tools
+ - build-tools-26.0.0
+ - android-21
+ - sys-img-armeabi-v7a-android-21
+
+before_install:
+ - echo no | android create avd --force -n test -t android-21 --abi armeabi-v7a
+ - emulator -avd test -no-skin -no-audio -no-window &
+
+install:
+ - mvn -q install --also-make --projects android,picocontainer -DskipTests=true
+ -Dmaven.javadoc.skip=true
+
+before_script:
+ - android-wait-for-emulator
+
+script:
+ - mvn install --activate-profiles android-examples --projects examples/android
+ --also-make-dependents -Dandroid.device=test
diff --git a/android/README.md b/android/README.md
index ab5a182872..20430d66e6 100644
--- a/android/README.md
+++ b/android/README.md
@@ -1,3 +1,7 @@
+# Cucumber-Android
+
+This project implements Android support for Cucumber-JVM
+
## Developers
### Prerequisites
@@ -49,3 +53,30 @@ You can also use command line to provide these options to cucumber-android. Here
### Debugging
Please read [the Android documentation on debugging](https://developer.android.com/tools/debugging/index.html).
+
+### Examples
+
+To *build* all android example modules with maven:
+
+```
+mvn package -pl examples/android -am -amd -P android,android-examples
+```
+
+To *clean* all android example modules with maven:
+
+```
+mvn clean -pl examples/android -amd -P android-examples
+```
+
+The example projects depend on the current (unreleased) Cucumber-JVM modules.
+If any of the examples fail to build, just build the android module and its dependencies once first:
+
+```
+mvn clean install -pl android -am
+```
+
+To create a virtual device and start an [Android emulator](https://developer.android.com/tools/devices/index.html):
+
+```
+$ANDROID_HOME/tools/android avd
+```
\ No newline at end of file
diff --git a/examples/android/android-studio/Cukeulator/.gitignore b/android/android-studio/Cukeulator/.gitignore
similarity index 100%
rename from examples/android/android-studio/Cukeulator/.gitignore
rename to android/android-studio/Cukeulator/.gitignore
diff --git a/examples/android/android-studio/Cukeulator/README.md b/android/android-studio/Cukeulator/README.md
similarity index 100%
rename from examples/android/android-studio/Cukeulator/README.md
rename to android/android-studio/Cukeulator/README.md
diff --git a/examples/android/android-studio/Cukeulator/app/.gitignore b/android/android-studio/Cukeulator/app/.gitignore
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/.gitignore
rename to android/android-studio/Cukeulator/app/.gitignore
diff --git a/examples/android/android-studio/Cukeulator/app/build.gradle b/android/android-studio/Cukeulator/app/build.gradle
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/build.gradle
rename to android/android-studio/Cukeulator/app/build.gradle
diff --git a/examples/android/android-studio/Cukeulator/app/proguard-rules.pro b/android/android-studio/Cukeulator/app/proguard-rules.pro
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/proguard-rules.pro
rename to android/android-studio/Cukeulator/app/proguard-rules.pro
diff --git a/examples/android/android-studio/Cukeulator/app/src/androidTest/assets/features/extra/calculate.feature b/android/android-studio/Cukeulator/app/src/androidTest/assets/features/extra/calculate.feature
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/androidTest/assets/features/extra/calculate.feature
rename to android/android-studio/Cukeulator/app/src/androidTest/assets/features/extra/calculate.feature
diff --git a/examples/android/android-studio/Cukeulator/app/src/androidTest/assets/features/operations/addition.feature b/android/android-studio/Cukeulator/app/src/androidTest/assets/features/operations/addition.feature
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/androidTest/assets/features/operations/addition.feature
rename to android/android-studio/Cukeulator/app/src/androidTest/assets/features/operations/addition.feature
diff --git a/examples/android/android-studio/Cukeulator/app/src/androidTest/assets/features/operations/division.feature b/android/android-studio/Cukeulator/app/src/androidTest/assets/features/operations/division.feature
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/androidTest/assets/features/operations/division.feature
rename to android/android-studio/Cukeulator/app/src/androidTest/assets/features/operations/division.feature
diff --git a/examples/android/android-studio/Cukeulator/app/src/androidTest/assets/features/operations/multiplication.feature b/android/android-studio/Cukeulator/app/src/androidTest/assets/features/operations/multiplication.feature
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/androidTest/assets/features/operations/multiplication.feature
rename to android/android-studio/Cukeulator/app/src/androidTest/assets/features/operations/multiplication.feature
diff --git a/examples/android/android-studio/Cukeulator/app/src/androidTest/assets/features/operations/subtraction.feature b/android/android-studio/Cukeulator/app/src/androidTest/assets/features/operations/subtraction.feature
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/androidTest/assets/features/operations/subtraction.feature
rename to android/android-studio/Cukeulator/app/src/androidTest/assets/features/operations/subtraction.feature
diff --git a/examples/android/android-studio/Cukeulator/app/src/androidTest/java/cucumber/cukeulator/test/CalculatorActivitySteps.java b/android/android-studio/Cukeulator/app/src/androidTest/java/cucumber/cukeulator/test/CalculatorActivitySteps.java
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/androidTest/java/cucumber/cukeulator/test/CalculatorActivitySteps.java
rename to android/android-studio/Cukeulator/app/src/androidTest/java/cucumber/cukeulator/test/CalculatorActivitySteps.java
diff --git a/examples/android/android-studio/Cukeulator/app/src/androidTest/java/cucumber/cukeulator/test/CucumberRunner.java b/android/android-studio/Cukeulator/app/src/androidTest/java/cucumber/cukeulator/test/CucumberRunner.java
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/androidTest/java/cucumber/cukeulator/test/CucumberRunner.java
rename to android/android-studio/Cukeulator/app/src/androidTest/java/cucumber/cukeulator/test/CucumberRunner.java
diff --git a/examples/android/android-studio/Cukeulator/app/src/androidTest/java/cucumber/cukeulator/test/SomeDependency.java b/android/android-studio/Cukeulator/app/src/androidTest/java/cucumber/cukeulator/test/SomeDependency.java
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/androidTest/java/cucumber/cukeulator/test/SomeDependency.java
rename to android/android-studio/Cukeulator/app/src/androidTest/java/cucumber/cukeulator/test/SomeDependency.java
diff --git a/examples/android/android-studio/Cukeulator/app/src/androidTest/java/cucumber/cukeulator/test/TypeRegistryConfiguration.java b/android/android-studio/Cukeulator/app/src/androidTest/java/cucumber/cukeulator/test/TypeRegistryConfiguration.java
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/androidTest/java/cucumber/cukeulator/test/TypeRegistryConfiguration.java
rename to android/android-studio/Cukeulator/app/src/androidTest/java/cucumber/cukeulator/test/TypeRegistryConfiguration.java
diff --git a/examples/android/android-studio/Cukeulator/app/src/debug/AndroidManifest.xml b/android/android-studio/Cukeulator/app/src/debug/AndroidManifest.xml
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/debug/AndroidManifest.xml
rename to android/android-studio/Cukeulator/app/src/debug/AndroidManifest.xml
diff --git a/examples/android/android-studio/Cukeulator/app/src/main/AndroidManifest.xml b/android/android-studio/Cukeulator/app/src/main/AndroidManifest.xml
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/main/AndroidManifest.xml
rename to android/android-studio/Cukeulator/app/src/main/AndroidManifest.xml
diff --git a/examples/android/android-studio/Cukeulator/app/src/main/java/cucumber/cukeulator/CalculatorActivity.java b/android/android-studio/Cukeulator/app/src/main/java/cucumber/cukeulator/CalculatorActivity.java
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/main/java/cucumber/cukeulator/CalculatorActivity.java
rename to android/android-studio/Cukeulator/app/src/main/java/cucumber/cukeulator/CalculatorActivity.java
diff --git a/examples/android/android-studio/Cukeulator/app/src/main/res/drawable-hdpi/ic_launcher.png b/android/android-studio/Cukeulator/app/src/main/res/drawable-hdpi/ic_launcher.png
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/main/res/drawable-hdpi/ic_launcher.png
rename to android/android-studio/Cukeulator/app/src/main/res/drawable-hdpi/ic_launcher.png
diff --git a/examples/android/android-studio/Cukeulator/app/src/main/res/drawable-mdpi/ic_launcher.png b/android/android-studio/Cukeulator/app/src/main/res/drawable-mdpi/ic_launcher.png
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/main/res/drawable-mdpi/ic_launcher.png
rename to android/android-studio/Cukeulator/app/src/main/res/drawable-mdpi/ic_launcher.png
diff --git a/examples/android/android-studio/Cukeulator/app/src/main/res/drawable-xhdpi/ic_launcher.png b/android/android-studio/Cukeulator/app/src/main/res/drawable-xhdpi/ic_launcher.png
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/main/res/drawable-xhdpi/ic_launcher.png
rename to android/android-studio/Cukeulator/app/src/main/res/drawable-xhdpi/ic_launcher.png
diff --git a/examples/android/android-studio/Cukeulator/app/src/main/res/drawable-xxhdpi/ic_launcher.png b/android/android-studio/Cukeulator/app/src/main/res/drawable-xxhdpi/ic_launcher.png
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/main/res/drawable-xxhdpi/ic_launcher.png
rename to android/android-studio/Cukeulator/app/src/main/res/drawable-xxhdpi/ic_launcher.png
diff --git a/examples/android/android-studio/Cukeulator/app/src/main/res/layout/activity_calculator.xml b/android/android-studio/Cukeulator/app/src/main/res/layout/activity_calculator.xml
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/main/res/layout/activity_calculator.xml
rename to android/android-studio/Cukeulator/app/src/main/res/layout/activity_calculator.xml
diff --git a/examples/android/android-studio/Cukeulator/app/src/main/res/menu/menu_main.xml b/android/android-studio/Cukeulator/app/src/main/res/menu/menu_main.xml
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/main/res/menu/menu_main.xml
rename to android/android-studio/Cukeulator/app/src/main/res/menu/menu_main.xml
diff --git a/examples/android/android-studio/Cukeulator/app/src/main/res/values-v21/styles.xml b/android/android-studio/Cukeulator/app/src/main/res/values-v21/styles.xml
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/main/res/values-v21/styles.xml
rename to android/android-studio/Cukeulator/app/src/main/res/values-v21/styles.xml
diff --git a/examples/android/android-studio/Cukeulator/app/src/main/res/values-w820dp/dimens.xml b/android/android-studio/Cukeulator/app/src/main/res/values-w820dp/dimens.xml
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/main/res/values-w820dp/dimens.xml
rename to android/android-studio/Cukeulator/app/src/main/res/values-w820dp/dimens.xml
diff --git a/examples/android/android-studio/Cukeulator/app/src/main/res/values/dimens.xml b/android/android-studio/Cukeulator/app/src/main/res/values/dimens.xml
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/main/res/values/dimens.xml
rename to android/android-studio/Cukeulator/app/src/main/res/values/dimens.xml
diff --git a/examples/android/android-studio/Cukeulator/app/src/main/res/values/strings.xml b/android/android-studio/Cukeulator/app/src/main/res/values/strings.xml
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/main/res/values/strings.xml
rename to android/android-studio/Cukeulator/app/src/main/res/values/strings.xml
diff --git a/examples/android/android-studio/Cukeulator/app/src/main/res/values/styles.xml b/android/android-studio/Cukeulator/app/src/main/res/values/styles.xml
similarity index 100%
rename from examples/android/android-studio/Cukeulator/app/src/main/res/values/styles.xml
rename to android/android-studio/Cukeulator/app/src/main/res/values/styles.xml
diff --git a/examples/android/android-studio/Cukeulator/build.gradle b/android/android-studio/Cukeulator/build.gradle
similarity index 100%
rename from examples/android/android-studio/Cukeulator/build.gradle
rename to android/android-studio/Cukeulator/build.gradle
diff --git a/examples/android/android-studio/Cukeulator/gradle.properties b/android/android-studio/Cukeulator/gradle.properties
similarity index 100%
rename from examples/android/android-studio/Cukeulator/gradle.properties
rename to android/android-studio/Cukeulator/gradle.properties
diff --git a/examples/android/android-studio/Cukeulator/gradle/wrapper/gradle-wrapper.jar b/android/android-studio/Cukeulator/gradle/wrapper/gradle-wrapper.jar
similarity index 100%
rename from examples/android/android-studio/Cukeulator/gradle/wrapper/gradle-wrapper.jar
rename to android/android-studio/Cukeulator/gradle/wrapper/gradle-wrapper.jar
diff --git a/examples/android/android-studio/Cukeulator/gradle/wrapper/gradle-wrapper.properties b/android/android-studio/Cukeulator/gradle/wrapper/gradle-wrapper.properties
similarity index 100%
rename from examples/android/android-studio/Cukeulator/gradle/wrapper/gradle-wrapper.properties
rename to android/android-studio/Cukeulator/gradle/wrapper/gradle-wrapper.properties
diff --git a/examples/android/android-studio/Cukeulator/gradlew b/android/android-studio/Cukeulator/gradlew
similarity index 100%
rename from examples/android/android-studio/Cukeulator/gradlew
rename to android/android-studio/Cukeulator/gradlew
diff --git a/examples/android/android-studio/Cukeulator/gradlew.bat b/android/android-studio/Cukeulator/gradlew.bat
similarity index 100%
rename from examples/android/android-studio/Cukeulator/gradlew.bat
rename to android/android-studio/Cukeulator/gradlew.bat
diff --git a/examples/android/android-studio/Cukeulator/settings.gradle b/android/android-studio/Cukeulator/settings.gradle
similarity index 100%
rename from examples/android/android-studio/Cukeulator/settings.gradle
rename to android/android-studio/Cukeulator/settings.gradle
diff --git a/examples/android/android-test/.gitignore b/android/cucumber-android-test/.gitignore
similarity index 100%
rename from examples/android/android-test/.gitignore
rename to android/cucumber-android-test/.gitignore
diff --git a/examples/android/android-test/README.md b/android/cucumber-android-test/README.md
similarity index 100%
rename from examples/android/android-test/README.md
rename to android/cucumber-android-test/README.md
diff --git a/examples/android/android-test/pom.xml b/android/cucumber-android-test/pom.xml
similarity index 93%
rename from examples/android/android-test/pom.xml
rename to android/cucumber-android-test/pom.xml
index 7f1af751dc..ed608b94b7 100644
--- a/examples/android/android-test/pom.xml
+++ b/android/cucumber-android-test/pom.xml
@@ -3,8 +3,8 @@
4.0.0
- io.cucumber.android-examples
- android-examples
+ io.cucumber.android
+ cucumber-android-parent
4.0.0-SNAPSHOT
diff --git a/examples/android/android-test/project.properties b/android/cucumber-android-test/project.properties
similarity index 100%
rename from examples/android/android-test/project.properties
rename to android/cucumber-android-test/project.properties
diff --git a/examples/android/android-test/src/main/AndroidManifest.xml b/android/cucumber-android-test/src/main/AndroidManifest.xml
similarity index 100%
rename from examples/android/android-test/src/main/AndroidManifest.xml
rename to android/cucumber-android-test/src/main/AndroidManifest.xml
diff --git a/examples/android/android-test/src/main/assets/features/Test.feature b/android/cucumber-android-test/src/main/assets/features/Test.feature
similarity index 100%
rename from examples/android/android-test/src/main/assets/features/Test.feature
rename to android/cucumber-android-test/src/main/assets/features/Test.feature
diff --git a/examples/android/android-test/src/main/java/cucumber/example/android/test/CucumberActivity.java b/android/cucumber-android-test/src/main/java/cucumber/example/android/test/CucumberActivity.java
similarity index 100%
rename from examples/android/android-test/src/main/java/cucumber/example/android/test/CucumberActivity.java
rename to android/cucumber-android-test/src/main/java/cucumber/example/android/test/CucumberActivity.java
diff --git a/examples/android/android-test/src/main/java/cucumber/example/android/test/CucumberActivitySteps.java b/android/cucumber-android-test/src/main/java/cucumber/example/android/test/CucumberActivitySteps.java
similarity index 100%
rename from examples/android/android-test/src/main/java/cucumber/example/android/test/CucumberActivitySteps.java
rename to android/cucumber-android-test/src/main/java/cucumber/example/android/test/CucumberActivitySteps.java
diff --git a/examples/android/android-test/src/main/java/cucumber/example/android/test/SomeDependency.java b/android/cucumber-android-test/src/main/java/cucumber/example/android/test/SomeDependency.java
similarity index 100%
rename from examples/android/android-test/src/main/java/cucumber/example/android/test/SomeDependency.java
rename to android/cucumber-android-test/src/main/java/cucumber/example/android/test/SomeDependency.java
diff --git a/examples/android/android-test/src/main/res/drawable-hdpi/ic_launcher.png b/android/cucumber-android-test/src/main/res/drawable-hdpi/ic_launcher.png
similarity index 100%
rename from examples/android/android-test/src/main/res/drawable-hdpi/ic_launcher.png
rename to android/cucumber-android-test/src/main/res/drawable-hdpi/ic_launcher.png
diff --git a/examples/android/android-test/src/main/res/layout/main.xml b/android/cucumber-android-test/src/main/res/layout/main.xml
similarity index 100%
rename from examples/android/android-test/src/main/res/layout/main.xml
rename to android/cucumber-android-test/src/main/res/layout/main.xml
diff --git a/examples/android/android-test/src/main/res/values/strings.xml b/android/cucumber-android-test/src/main/res/values/strings.xml
similarity index 100%
rename from examples/android/android-test/src/main/res/values/strings.xml
rename to android/cucumber-android-test/src/main/res/values/strings.xml
diff --git a/android/.gitignore b/android/cucumber-android/.gitignore
similarity index 100%
rename from android/.gitignore
rename to android/cucumber-android/.gitignore
diff --git a/android/pom.xml b/android/cucumber-android/pom.xml
similarity index 91%
rename from android/pom.xml
rename to android/cucumber-android/pom.xml
index 15ace016e8..56beb4ae21 100644
--- a/android/pom.xml
+++ b/android/cucumber-android/pom.xml
@@ -1,21 +1,19 @@
-
+
4.0.0
- io.cucumber
- cucumber-jvm
+ io.cucumber.android
+ cucumber-android-parent
4.0.0-SNAPSHOT
cucumber-android
- Cucumber-JVM: Android
+ Cucumber-Android: Main
com.google.android
android
- 4.1.1.4
provided
diff --git a/android/src/main/java/cucumber/api/android/CucumberInstrumentation.java b/android/cucumber-android/src/main/java/cucumber/api/android/CucumberInstrumentation.java
similarity index 100%
rename from android/src/main/java/cucumber/api/android/CucumberInstrumentation.java
rename to android/cucumber-android/src/main/java/cucumber/api/android/CucumberInstrumentation.java
diff --git a/android/src/main/java/cucumber/api/android/CucumberInstrumentationCore.java b/android/cucumber-android/src/main/java/cucumber/api/android/CucumberInstrumentationCore.java
similarity index 100%
rename from android/src/main/java/cucumber/api/android/CucumberInstrumentationCore.java
rename to android/cucumber-android/src/main/java/cucumber/api/android/CucumberInstrumentationCore.java
diff --git a/android/src/main/java/cucumber/runtime/android/AndroidObjectFactory.java b/android/cucumber-android/src/main/java/cucumber/runtime/android/AndroidObjectFactory.java
similarity index 100%
rename from android/src/main/java/cucumber/runtime/android/AndroidObjectFactory.java
rename to android/cucumber-android/src/main/java/cucumber/runtime/android/AndroidObjectFactory.java
diff --git a/android/src/main/java/cucumber/runtime/android/AndroidResource.java b/android/cucumber-android/src/main/java/cucumber/runtime/android/AndroidResource.java
similarity index 100%
rename from android/src/main/java/cucumber/runtime/android/AndroidResource.java
rename to android/cucumber-android/src/main/java/cucumber/runtime/android/AndroidResource.java
diff --git a/android/src/main/java/cucumber/runtime/android/AndroidResourceLoader.java b/android/cucumber-android/src/main/java/cucumber/runtime/android/AndroidResourceLoader.java
similarity index 100%
rename from android/src/main/java/cucumber/runtime/android/AndroidResourceLoader.java
rename to android/cucumber-android/src/main/java/cucumber/runtime/android/AndroidResourceLoader.java
diff --git a/android/src/main/java/cucumber/runtime/android/Arguments.java b/android/cucumber-android/src/main/java/cucumber/runtime/android/Arguments.java
similarity index 100%
rename from android/src/main/java/cucumber/runtime/android/Arguments.java
rename to android/cucumber-android/src/main/java/cucumber/runtime/android/Arguments.java
diff --git a/android/src/main/java/cucumber/runtime/android/CoverageDumper.java b/android/cucumber-android/src/main/java/cucumber/runtime/android/CoverageDumper.java
similarity index 100%
rename from android/src/main/java/cucumber/runtime/android/CoverageDumper.java
rename to android/cucumber-android/src/main/java/cucumber/runtime/android/CoverageDumper.java
diff --git a/android/src/main/java/cucumber/runtime/android/CucumberExecutor.java b/android/cucumber-android/src/main/java/cucumber/runtime/android/CucumberExecutor.java
similarity index 100%
rename from android/src/main/java/cucumber/runtime/android/CucumberExecutor.java
rename to android/cucumber-android/src/main/java/cucumber/runtime/android/CucumberExecutor.java
diff --git a/android/src/main/java/cucumber/runtime/android/DebuggerWaiter.java b/android/cucumber-android/src/main/java/cucumber/runtime/android/DebuggerWaiter.java
similarity index 100%
rename from android/src/main/java/cucumber/runtime/android/DebuggerWaiter.java
rename to android/cucumber-android/src/main/java/cucumber/runtime/android/DebuggerWaiter.java
diff --git a/android/src/main/java/cucumber/runtime/android/DexClassFinder.java b/android/cucumber-android/src/main/java/cucumber/runtime/android/DexClassFinder.java
similarity index 100%
rename from android/src/main/java/cucumber/runtime/android/DexClassFinder.java
rename to android/cucumber-android/src/main/java/cucumber/runtime/android/DexClassFinder.java
diff --git a/android/src/main/java/cucumber/runtime/android/FeatureCompiler.java b/android/cucumber-android/src/main/java/cucumber/runtime/android/FeatureCompiler.java
similarity index 100%
rename from android/src/main/java/cucumber/runtime/android/FeatureCompiler.java
rename to android/cucumber-android/src/main/java/cucumber/runtime/android/FeatureCompiler.java
diff --git a/android/src/main/java/cucumber/runtime/formatter/AndroidLogcatReporter.java b/android/cucumber-android/src/main/java/cucumber/runtime/formatter/AndroidLogcatReporter.java
similarity index 100%
rename from android/src/main/java/cucumber/runtime/formatter/AndroidLogcatReporter.java
rename to android/cucumber-android/src/main/java/cucumber/runtime/formatter/AndroidLogcatReporter.java
diff --git a/android/src/main/java/cucumber/runtime/formatter/MissingStepDefinitionError.java b/android/cucumber-android/src/main/java/cucumber/runtime/formatter/MissingStepDefinitionError.java
similarity index 100%
rename from android/src/main/java/cucumber/runtime/formatter/MissingStepDefinitionError.java
rename to android/cucumber-android/src/main/java/cucumber/runtime/formatter/MissingStepDefinitionError.java
diff --git a/android/src/test/java/com/vladium/emma/rt/RT.java b/android/cucumber-android/src/test/java/com/vladium/emma/rt/RT.java
similarity index 100%
rename from android/src/test/java/com/vladium/emma/rt/RT.java
rename to android/cucumber-android/src/test/java/com/vladium/emma/rt/RT.java
diff --git a/android/src/test/java/cucumber/runtime/android/AndroidObjectFactoryTest.java b/android/cucumber-android/src/test/java/cucumber/runtime/android/AndroidObjectFactoryTest.java
similarity index 100%
rename from android/src/test/java/cucumber/runtime/android/AndroidObjectFactoryTest.java
rename to android/cucumber-android/src/test/java/cucumber/runtime/android/AndroidObjectFactoryTest.java
diff --git a/android/src/test/java/cucumber/runtime/android/AndroidResourceLoaderTest.java b/android/cucumber-android/src/test/java/cucumber/runtime/android/AndroidResourceLoaderTest.java
similarity index 100%
rename from android/src/test/java/cucumber/runtime/android/AndroidResourceLoaderTest.java
rename to android/cucumber-android/src/test/java/cucumber/runtime/android/AndroidResourceLoaderTest.java
diff --git a/android/src/test/java/cucumber/runtime/android/AndroidResourceTest.java b/android/cucumber-android/src/test/java/cucumber/runtime/android/AndroidResourceTest.java
similarity index 100%
rename from android/src/test/java/cucumber/runtime/android/AndroidResourceTest.java
rename to android/cucumber-android/src/test/java/cucumber/runtime/android/AndroidResourceTest.java
diff --git a/android/src/test/java/cucumber/runtime/android/ArgumentsTest.java b/android/cucumber-android/src/test/java/cucumber/runtime/android/ArgumentsTest.java
similarity index 100%
rename from android/src/test/java/cucumber/runtime/android/ArgumentsTest.java
rename to android/cucumber-android/src/test/java/cucumber/runtime/android/ArgumentsTest.java
diff --git a/android/src/test/java/cucumber/runtime/android/CoverageDumperTest.java b/android/cucumber-android/src/test/java/cucumber/runtime/android/CoverageDumperTest.java
similarity index 100%
rename from android/src/test/java/cucumber/runtime/android/CoverageDumperTest.java
rename to android/cucumber-android/src/test/java/cucumber/runtime/android/CoverageDumperTest.java
diff --git a/android/src/test/java/cucumber/runtime/android/DebuggerWaiterTest.java b/android/cucumber-android/src/test/java/cucumber/runtime/android/DebuggerWaiterTest.java
similarity index 100%
rename from android/src/test/java/cucumber/runtime/android/DebuggerWaiterTest.java
rename to android/cucumber-android/src/test/java/cucumber/runtime/android/DebuggerWaiterTest.java
diff --git a/android/src/test/java/cucumber/runtime/android/DexClassFinderTest.java b/android/cucumber-android/src/test/java/cucumber/runtime/android/DexClassFinderTest.java
similarity index 100%
rename from android/src/test/java/cucumber/runtime/android/DexClassFinderTest.java
rename to android/cucumber-android/src/test/java/cucumber/runtime/android/DexClassFinderTest.java
diff --git a/android/src/test/java/cucumber/runtime/android/shadow/ShadowDexFile.java b/android/cucumber-android/src/test/java/cucumber/runtime/android/shadow/ShadowDexFile.java
similarity index 100%
rename from android/src/test/java/cucumber/runtime/android/shadow/ShadowDexFile.java
rename to android/cucumber-android/src/test/java/cucumber/runtime/android/shadow/ShadowDexFile.java
diff --git a/android/src/test/java/cucumber/runtime/android/stub/unwanted/SomeUnwantedClass.java b/android/cucumber-android/src/test/java/cucumber/runtime/android/stub/unwanted/SomeUnwantedClass.java
similarity index 100%
rename from android/src/test/java/cucumber/runtime/android/stub/unwanted/SomeUnwantedClass.java
rename to android/cucumber-android/src/test/java/cucumber/runtime/android/stub/unwanted/SomeUnwantedClass.java
diff --git a/android/src/test/java/cucumber/runtime/android/stub/wanted/Manifest.java b/android/cucumber-android/src/test/java/cucumber/runtime/android/stub/wanted/Manifest.java
similarity index 100%
rename from android/src/test/java/cucumber/runtime/android/stub/wanted/Manifest.java
rename to android/cucumber-android/src/test/java/cucumber/runtime/android/stub/wanted/Manifest.java
diff --git a/android/src/test/java/cucumber/runtime/android/stub/wanted/R.java b/android/cucumber-android/src/test/java/cucumber/runtime/android/stub/wanted/R.java
similarity index 100%
rename from android/src/test/java/cucumber/runtime/android/stub/wanted/R.java
rename to android/cucumber-android/src/test/java/cucumber/runtime/android/stub/wanted/R.java
diff --git a/android/src/test/java/cucumber/runtime/android/stub/wanted/SomeClass.java b/android/cucumber-android/src/test/java/cucumber/runtime/android/stub/wanted/SomeClass.java
similarity index 100%
rename from android/src/test/java/cucumber/runtime/android/stub/wanted/SomeClass.java
rename to android/cucumber-android/src/test/java/cucumber/runtime/android/stub/wanted/SomeClass.java
diff --git a/android/src/test/java/cucumber/runtime/formatter/MissingStepDefinitionErrorTest.java b/android/cucumber-android/src/test/java/cucumber/runtime/formatter/MissingStepDefinitionErrorTest.java
similarity index 100%
rename from android/src/test/java/cucumber/runtime/formatter/MissingStepDefinitionErrorTest.java
rename to android/cucumber-android/src/test/java/cucumber/runtime/formatter/MissingStepDefinitionErrorTest.java
diff --git a/examples/android/cukeulator-test/.gitignore b/android/cukeulator-test/.gitignore
similarity index 100%
rename from examples/android/cukeulator-test/.gitignore
rename to android/cukeulator-test/.gitignore
diff --git a/examples/android/cukeulator-test/README.md b/android/cukeulator-test/README.md
similarity index 100%
rename from examples/android/cukeulator-test/README.md
rename to android/cukeulator-test/README.md
diff --git a/examples/android/cukeulator-test/ant.properties b/android/cukeulator-test/ant.properties
similarity index 100%
rename from examples/android/cukeulator-test/ant.properties
rename to android/cukeulator-test/ant.properties
diff --git a/examples/android/cukeulator-test/build.xml b/android/cukeulator-test/build.xml
similarity index 100%
rename from examples/android/cukeulator-test/build.xml
rename to android/cukeulator-test/build.xml
diff --git a/examples/android/cukeulator-test/custom_rules.xml b/android/cukeulator-test/custom_rules.xml
similarity index 100%
rename from examples/android/cukeulator-test/custom_rules.xml
rename to android/cukeulator-test/custom_rules.xml
diff --git a/examples/android/cukeulator-test/libs/README.md b/android/cukeulator-test/libs/README.md
similarity index 100%
rename from examples/android/cukeulator-test/libs/README.md
rename to android/cukeulator-test/libs/README.md
diff --git a/examples/android/cukeulator-test/libs/init.sh b/android/cukeulator-test/libs/init.sh
similarity index 100%
rename from examples/android/cukeulator-test/libs/init.sh
rename to android/cukeulator-test/libs/init.sh
diff --git a/examples/android/cukeulator-test/libs/init.xml b/android/cukeulator-test/libs/init.xml
similarity index 100%
rename from examples/android/cukeulator-test/libs/init.xml
rename to android/cukeulator-test/libs/init.xml
diff --git a/examples/android/cukeulator-test/pom.xml b/android/cukeulator-test/pom.xml
similarity index 91%
rename from examples/android/cukeulator-test/pom.xml
rename to android/cukeulator-test/pom.xml
index b272404f49..f07cdab3e5 100644
--- a/examples/android/cukeulator-test/pom.xml
+++ b/android/cukeulator-test/pom.xml
@@ -3,8 +3,8 @@
4.0.0
- io.cucumber.android-examples
- android-examples
+ io.cucumber.android
+ cucumber-android-parent
4.0.0-SNAPSHOT
@@ -26,14 +26,14 @@
cucumber-picocontainer
- io.cucumber.android-examples
+ io.cucumber.android
cukelator
${project.version}
provided
- io.cucumber.android-examples
+ io.cucumber.android
cukelator
${project.version}
provided
diff --git a/examples/android/cukeulator-test/proguard-project.txt b/android/cukeulator-test/proguard-project.txt
similarity index 100%
rename from examples/android/cukeulator-test/proguard-project.txt
rename to android/cukeulator-test/proguard-project.txt
diff --git a/examples/android/cukeulator-test/project.properties b/android/cukeulator-test/project.properties
similarity index 94%
rename from examples/android/cukeulator-test/project.properties
rename to android/cukeulator-test/project.properties
index a2bff58584..6df9ff8bb5 100644
--- a/examples/android/cukeulator-test/project.properties
+++ b/android/cukeulator-test/project.properties
@@ -11,5 +11,6 @@
#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
# Project target.
-target=android-18
+target=android-21
android.library=false
+project.type=0
diff --git a/examples/android/cukeulator-test/src/main/AndroidManifest.xml b/android/cukeulator-test/src/main/AndroidManifest.xml
similarity index 100%
rename from examples/android/cukeulator-test/src/main/AndroidManifest.xml
rename to android/cukeulator-test/src/main/AndroidManifest.xml
diff --git a/examples/android/cukeulator-test/src/main/assets/features/extra/calculate.feature b/android/cukeulator-test/src/main/assets/features/extra/calculate.feature
similarity index 100%
rename from examples/android/cukeulator-test/src/main/assets/features/extra/calculate.feature
rename to android/cukeulator-test/src/main/assets/features/extra/calculate.feature
diff --git a/examples/android/cukeulator-test/src/main/assets/features/operations/addition.feature b/android/cukeulator-test/src/main/assets/features/operations/addition.feature
similarity index 100%
rename from examples/android/cukeulator-test/src/main/assets/features/operations/addition.feature
rename to android/cukeulator-test/src/main/assets/features/operations/addition.feature
diff --git a/examples/android/cukeulator-test/src/main/assets/features/operations/division.feature b/android/cukeulator-test/src/main/assets/features/operations/division.feature
similarity index 100%
rename from examples/android/cukeulator-test/src/main/assets/features/operations/division.feature
rename to android/cukeulator-test/src/main/assets/features/operations/division.feature
diff --git a/examples/android/cukeulator-test/src/main/assets/features/operations/multiplication.feature b/android/cukeulator-test/src/main/assets/features/operations/multiplication.feature
similarity index 100%
rename from examples/android/cukeulator-test/src/main/assets/features/operations/multiplication.feature
rename to android/cukeulator-test/src/main/assets/features/operations/multiplication.feature
diff --git a/examples/android/cukeulator-test/src/main/assets/features/operations/subtraction.feature b/android/cukeulator-test/src/main/assets/features/operations/subtraction.feature
similarity index 100%
rename from examples/android/cukeulator-test/src/main/assets/features/operations/subtraction.feature
rename to android/cukeulator-test/src/main/assets/features/operations/subtraction.feature
diff --git a/examples/android/cukeulator-test/src/main/java/cucumber/example/android/cukeulator/test/CalculatorActivitySteps.java b/android/cukeulator-test/src/main/java/cucumber/example/android/cukeulator/test/CalculatorActivitySteps.java
similarity index 100%
rename from examples/android/cukeulator-test/src/main/java/cucumber/example/android/cukeulator/test/CalculatorActivitySteps.java
rename to android/cukeulator-test/src/main/java/cucumber/example/android/cukeulator/test/CalculatorActivitySteps.java
diff --git a/examples/android/cukeulator-test/src/main/java/cucumber/example/android/cukeulator/test/SomeDependency.java b/android/cukeulator-test/src/main/java/cucumber/example/android/cukeulator/test/SomeDependency.java
similarity index 100%
rename from examples/android/cukeulator-test/src/main/java/cucumber/example/android/cukeulator/test/SomeDependency.java
rename to android/cukeulator-test/src/main/java/cucumber/example/android/cukeulator/test/SomeDependency.java
diff --git a/examples/android/cukeulator-test/src/main/java/cucumber/example/android/cukeulator/test/TypeRegistryConfiguration.java b/android/cukeulator-test/src/main/java/cucumber/example/android/cukeulator/test/TypeRegistryConfiguration.java
similarity index 100%
rename from examples/android/cukeulator-test/src/main/java/cucumber/example/android/cukeulator/test/TypeRegistryConfiguration.java
rename to android/cukeulator-test/src/main/java/cucumber/example/android/cukeulator/test/TypeRegistryConfiguration.java
diff --git a/examples/android/cukeulator-test/src/main/java/cucumber/example/android/cukeulator/test/Utils.java b/android/cukeulator-test/src/main/java/cucumber/example/android/cukeulator/test/Utils.java
similarity index 100%
rename from examples/android/cukeulator-test/src/main/java/cucumber/example/android/cukeulator/test/Utils.java
rename to android/cukeulator-test/src/main/java/cucumber/example/android/cukeulator/test/Utils.java
diff --git a/examples/android/cukeulator/.gitignore b/android/cukeulator/.gitignore
similarity index 100%
rename from examples/android/cukeulator/.gitignore
rename to android/cukeulator/.gitignore
diff --git a/examples/android/cukeulator/README.md b/android/cukeulator/README.md
similarity index 100%
rename from examples/android/cukeulator/README.md
rename to android/cukeulator/README.md
diff --git a/examples/android/cukeulator/ant.properties b/android/cukeulator/ant.properties
similarity index 100%
rename from examples/android/cukeulator/ant.properties
rename to android/cukeulator/ant.properties
diff --git a/examples/android/cukeulator/build.xml b/android/cukeulator/build.xml
similarity index 100%
rename from examples/android/cukeulator/build.xml
rename to android/cukeulator/build.xml
diff --git a/examples/android/cukeulator/pom.xml b/android/cukeulator/pom.xml
similarity index 70%
rename from examples/android/cukeulator/pom.xml
rename to android/cukeulator/pom.xml
index 088b8af597..6c27890928 100644
--- a/examples/android/cukeulator/pom.xml
+++ b/android/cukeulator/pom.xml
@@ -3,8 +3,8 @@
4.0.0
- io.cucumber.android-examples
- android-examples
+ io.cucumber.android
+ cucumber-android-parent
4.0.0-SNAPSHOT
@@ -12,6 +12,14 @@
apk
Examples: Android Cukeulator
+
+
+ com.google.android
+ android
+ provided
+
+
+
diff --git a/examples/android/cukeulator/proguard-project.txt b/android/cukeulator/proguard-project.txt
similarity index 100%
rename from examples/android/cukeulator/proguard-project.txt
rename to android/cukeulator/proguard-project.txt
diff --git a/examples/android/cukeulator/project.properties b/android/cukeulator/project.properties
similarity index 94%
rename from examples/android/cukeulator/project.properties
rename to android/cukeulator/project.properties
index a2bff58584..6df9ff8bb5 100644
--- a/examples/android/cukeulator/project.properties
+++ b/android/cukeulator/project.properties
@@ -11,5 +11,6 @@
#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
# Project target.
-target=android-18
+target=android-21
android.library=false
+project.type=0
diff --git a/examples/android/cukeulator/src/main/AndroidManifest.xml b/android/cukeulator/src/main/AndroidManifest.xml
similarity index 100%
rename from examples/android/cukeulator/src/main/AndroidManifest.xml
rename to android/cukeulator/src/main/AndroidManifest.xml
diff --git a/examples/android/cukeulator/src/main/java/cucumber/example/android/cukeulator/CalculatorActivity.java b/android/cukeulator/src/main/java/cucumber/example/android/cukeulator/CalculatorActivity.java
similarity index 100%
rename from examples/android/cukeulator/src/main/java/cucumber/example/android/cukeulator/CalculatorActivity.java
rename to android/cukeulator/src/main/java/cucumber/example/android/cukeulator/CalculatorActivity.java
diff --git a/examples/android/cukeulator/src/main/res/drawable-hdpi/ic_launcher.png b/android/cukeulator/src/main/res/drawable-hdpi/ic_launcher.png
similarity index 100%
rename from examples/android/cukeulator/src/main/res/drawable-hdpi/ic_launcher.png
rename to android/cukeulator/src/main/res/drawable-hdpi/ic_launcher.png
diff --git a/examples/android/cukeulator/src/main/res/drawable-mdpi/ic_launcher.png b/android/cukeulator/src/main/res/drawable-mdpi/ic_launcher.png
similarity index 100%
rename from examples/android/cukeulator/src/main/res/drawable-mdpi/ic_launcher.png
rename to android/cukeulator/src/main/res/drawable-mdpi/ic_launcher.png
diff --git a/examples/android/cukeulator/src/main/res/drawable-xhdpi/ic_launcher.png b/android/cukeulator/src/main/res/drawable-xhdpi/ic_launcher.png
similarity index 100%
rename from examples/android/cukeulator/src/main/res/drawable-xhdpi/ic_launcher.png
rename to android/cukeulator/src/main/res/drawable-xhdpi/ic_launcher.png
diff --git a/examples/android/cukeulator/src/main/res/drawable-xxhdpi/ic_launcher.png b/android/cukeulator/src/main/res/drawable-xxhdpi/ic_launcher.png
similarity index 100%
rename from examples/android/cukeulator/src/main/res/drawable-xxhdpi/ic_launcher.png
rename to android/cukeulator/src/main/res/drawable-xxhdpi/ic_launcher.png
diff --git a/examples/android/cukeulator/src/main/res/layout/activity_calculator.xml b/android/cukeulator/src/main/res/layout/activity_calculator.xml
similarity index 100%
rename from examples/android/cukeulator/src/main/res/layout/activity_calculator.xml
rename to android/cukeulator/src/main/res/layout/activity_calculator.xml
diff --git a/examples/android/cukeulator/src/main/res/values/strings.xml b/android/cukeulator/src/main/res/values/strings.xml
similarity index 100%
rename from examples/android/cukeulator/src/main/res/values/strings.xml
rename to android/cukeulator/src/main/res/values/strings.xml
diff --git a/examples/android/wait_for_emulator b/android/wait_for_emulator
similarity index 100%
rename from examples/android/wait_for_emulator
rename to android/wait_for_emulator
diff --git a/examples/android/README.md b/examples/android/README.md
deleted file mode 100644
index d9563be6c8..0000000000
--- a/examples/android/README.md
+++ /dev/null
@@ -1,24 +0,0 @@
-To *build* all android example modules with maven:
-
-```
-mvn package -pl examples/android -am -amd -P android,android-examples
-```
-
-To *clean* all android example modules with maven:
-
-```
-mvn clean -pl examples/android -amd -P android-examples
-```
-
-The example projects depend on the current (unreleased) Cucumber-JVM modules.
-If any of the examples fail to build, just build the android module and its dependencies once first:
-
-```
-mvn clean install -pl android -am
-```
-
-To create a virtual device and start an [Android emulator](https://developer.android.com/tools/devices/index.html):
-
-```
-$ANDROID_HOME/tools/android avd
-```
diff --git a/examples/android/pom.xml b/examples/android/pom.xml
deleted file mode 100644
index 66612f2859..0000000000
--- a/examples/android/pom.xml
+++ /dev/null
@@ -1,59 +0,0 @@
-
-
- 4.0.0
-
-
- io.cucumber
- cucumber-examples
- 4.0.0-SNAPSHOT
-
-
- io.cucumber.android-examples
- android-examples
- pom
- Examples: Android
-
-
- android-test
- cukeulator
- cukeulator-test
-
-
-
- emulator
- UTF-8
-
-
-
-
- com.google.android
- android
- provided
-
-
- com.google.android
- android-test
- provided
-
-
-
-
-
-
-
- com.simpligility.maven.plugins
- android-maven-plugin
- ${android-maven-plugin.version}
-
-
- 21
-
- true
-
-
-
-
-
-
-
diff --git a/examples/pom.xml b/examples/pom.xml
index b53cc69364..0d38a53d5a 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -21,13 +21,6 @@
-
- android-examples
-
- android
-
-
-
coveralls.io
diff --git a/pom.xml b/pom.xml
index fd03b48a4d..b234fcf8d6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -74,8 +74,6 @@
2.3.28
3.1.0
- 4.4.3
- 4.1.1.4
7.0.0
@@ -169,16 +167,6 @@
picocontainer
${picocontainer.version}
-
- io.cucumber
- cucumber-android
- ${project.version}
-
-
- io.cucumber
- android-examples
- ${project.version}
-
io.cucumber
cucumber-java8
@@ -530,7 +518,6 @@
weld
openejb
needle
- android
examples
continuous-deployment