2017-06-22 23 views
0

我想使用CircleCI构建一个Android项目,但每次运行构建时,构建都会在“配置构建”任务中完成,并且我收到此消息:CircleCI“试图推断有关您的代码的信息时发生了一些错误”

尝试推断有关您的代码的信息时发生了一些错误。

此外,发生这种情况时,CircleCI自动尝试重建分支,导致循环,因为每个新构建都保持失败。

这是我的circle.yml文件

version: 1 
machine: 
    java: 
    version: oraclejdk8 
    environment: 
    # Java options 
    JAVA_OPTS: "-Xms512m -Xmx2048m" 
    GRADLE_OPTS: "-Dorg.gradle.daemon=false" 

dependencies: 
    pre: 
    # Install the android packages 
    - echo y | android update sdk --no-ui --all --filter "build-tools-25.0.3" 

test: 
    pre: 
    override: 
    # Generate a debug-apk 
    - ./gradlew assembleAppseeOffDebug -PdisablePreDex 

    # Copy the generated apk files to Circle-CI Artifacts 
    - cp -r app/build/outputs/apk/ $CIRCLE_ARTIFACTS 

    # Copy the test results to Circle-CI Artifacts 
    - cp -r app/build/outputs/androidTest-results/* $CIRCLE_TEST_REPORTS 

回答

2

问题解决了通过以下this circle.yml example

1中,测试标签之后有一个覆盖标签,但在我的circle.yml文件有一个标记。删除标签解决了这个问题。

最终circle.yml文件

version: 1 
machine: 
    java: 
    version: oraclejdk8 
    environment: 
    # Java options 
    JAVA_OPTS: "-Xms512m -Xmx2048m" 
    GRADLE_OPTS: "-Dorg.gradle.daemon=false" 

dependencies: 
    pre: 
    # Install the android packages 
    - echo y | android update sdk --no-ui --all --filter "build-tools-25.0.3 


test: 
    # REMOVED pre TAG 
    override:  
    # Generate a debug-apk 
    - ./gradlew assembleAppseeOffDebug -PdisablePreDex 

    # Copy the generated apk files to Circle-CI Artifacts 
    - cp -r app/build/outputs/apk/ $CIRCLE_ARTIFACTS 

    # Copy the test results to Circle-CI Artifacts 
    - cp -r app/build/outputs/androidTest-results/* $CIRCLE_TEST_REPORTS 
+0

另外'版本:1'不是CircleCI 1.0设计规范的一部分,不应该存在。 – FelicianoTech

+1

大多数阶段,让'测试'可以有不同的步骤。 'pre'发生在CircleCI的推断命令和'post'之后。 'override'告诉CircleCi不使用推断的命令,而是只使用你指定的命令。 – FelicianoTech

相关问题