Android 连续集成中自动生成代码(如Dagger2)的Gradle问题
我正在使用Android 连续集成中自动生成代码(如Dagger2)的Gradle问题,android,gradle,travis-ci,circleci,dagger-2,Android,Gradle,Travis Ci,Circleci,Dagger 2,我正在使用AutoParcel和Dagger2自动生成代码,这需要使用gradleandroid apt插件。这意味着第一次编译失败,但当您再次运行任务时,它成功了。通常这只是一个小麻烦,但对于像CircleCI或TravisCI这样的持续集成工具来说,这是一个大问题,它们总是运行干净的构建 ./gradlew :app:clean ./gradlew :app:compileDebugJava //fails ./gradlew :app:compileDebugJava //succ
AutoParcel
和Dagger2
自动生成代码,这需要使用gradleandroid apt
插件。这意味着第一次编译失败,但当您再次运行任务时,它成功了。通常这只是一个小麻烦,但对于像CircleCI或TravisCI这样的持续集成工具来说,这是一个大问题,它们总是运行干净的构建
./gradlew :app:clean
./gradlew :app:compileDebugJava //fails
./gradlew :app:compileDebugJava //succeeds
Android开发人员如何解决这个问题?显然,我不希望每个CI构建都报告失败
circle.yml
test:
pre:
- ./gradlew :android:compileDebugJava -PdisablePreDex
override:
- ./gradlew :android:compileDebugJava -PdisablePreDex
添加
| | true
会将失败的任务报告为CircleCI成功
test:
pre:
- ./gradlew :android:compileDebugJava -PdisablePreDex || true
override:
- ./gradlew :android:compileDebugJava -PdisablePreDex