如何让CircleCI使用特定的Gradle版本?

时间:2017-05-23 10:34:43

标签: android gradle circleci

我仍在使用2.14.1,而在我的情况下我想要3.3: 尽管如下circle.yml:

machine:
  environment:
    PATH: "~/$CIRCLE_PROJECT_REPONAME/gradle-3.3/bin:$PATH"
    TERM: "dumb"
    ADB_INSTALL_TIMEOUT: "10"
    GRADLE_OPTS: '-Dorg.gradle.jvmargs="-Xmx2048m -XX:+HeapDumpOnOutOfMemoryError"'
  java:
    version: oraclejdk8

dependencies:
  pre:
    # Install Android stuffs
    - wget "https://services.gradle.org/distributions/gradle-3.3-bin.zip"; unzip gradle-3.3-bin.zip
    - echo y | android update sdk --no-ui --all --filter tool
    - echo y | android update sdk --no-ui --all --filter extra-android-m2repository
    - echo y | android update sdk --no-ui --all --filter extra-android-support
    - echo y | android update sdk --no-ui --all --filter extra-google-google_play_services
    - echo y | android update sdk --no-ui --all --filter extra-google-m2repository
    - echo y | android update sdk --no-ui --all --filter android-25
    - echo y | android update sdk --no-ui --all --filter build-tools-25.0.2
test:
  override:
    # start the emulator
    - emulator -avd circleci-android19 -no-audio -no-window:
        background: true
        parallel: true
    # wait for it to have booted
    - circle-android wait-for-boot
    # unlock the emulator screen
    - sleep 30
    - adb shell input keyevent 82

错误的版本很可能是我gradle dependencies失败的原因:
enter image description here

1 个答案:

答案 0 :(得分:2)

yourProject/gradle/wrapper/gradle-wrapper.properties"中,您可以定义gradle版本。像这样:

distributionUrl=https\://services.gradle.org/distributions/gradle-3.4-all.zip `

更新

我认为wget "https://services.gradle.org/distributions/gradle-3.3-bin.zip"不需要它,因为当CI调用./gradlew时,它会自动下载gradle。