CircleCI使用绝对路径,而不是相对路径

时间:2016-07-12 01:12:13

标签: android gradle android-gradle build-automation circleci

我正在使用CircleCI构建Android应用程序,在项目中我编译了一个Android库作为依赖项。但是,我在CircleCI构建期间收到以下错误:

String

看起来CircleCI正在尝试使用一些构建工具来编译模块,但是因为它在我的机器上使用绝对路径而失败。如果可能,我如何配置CircleCI以使用Android SDK的本地路径?

如果需要,以下是我的import UIKit var parent = [String: [String]]() parent["parent"] = ["Tommy Turner", "Wolfgang Motart"] parent["parent"] = ["Bobby Bushe"] print(parent) // How can I add multiple values into the parent key like this: // ["parent": "Tommy Turner", "Wolgang Motart", "Bobby Bushe"]

A problem occurred configuring project ':aModule'.
> The SDK directory '/home/myname/Android/Sdk' does not exist.

*更新:SDK路径在我的项目的local.properties

中设置

1 个答案:

答案 0 :(得分:0)

对我来说,解决方案是在circle.yml文件中使用以下内容

#
# Build configuration for Circle CI
#

general:
    artifacts:
        - /home/ubuntu/your-app-name/app/build/outputs/apk/

machine:
  environment:
    ANDROID_HOME: /usr/local/android-sdk-linux
    GRADLE_OPTS: '-Dorg.gradle.jvmargs="-Xmx2048m -XX:+HeapDumpOnOutOfMemoryError"'
  java:
    version: oraclejdk8

checkout:
  post:
    - git submodule sync
    - git submodule update --init

dependencies:
    pre:
        - echo y | android update sdk --no-ui --all --filter tools,platform-tools,build-tools-25.0.2,android-25,extra-google-m2repository,extra-google-google_play_services,extra-android-m2repository,extra-android-support
        - chmod +x gradlew
        - ANDROID_HOME=/usr/local/android-sdk-linux ./gradlew dependencies

test:
    override:
        - (./gradlew assemble):
            timeout: 360

gradlew的权限和设置ANDROID_HOME = / usr / local / android-sdk-linux似乎是需要的......

但我一直在使用circleci大约30分钟......