Android CircleCI“;在试图推断有关代码的信息时发生了一些错误;

Android CircleCI“;在试图推断有关代码的信息时发生了一些错误;,android,continuous-integration,circleci,Android,Continuous Integration,Circleci,我正在尝试使用CircleCI构建Android项目,但每次运行构建时,构建都会在配置构建任务中完成,我会收到以下消息: 在试图推断代码信息时发生了一些错误。 此外,当这种情况发生时,CircleCI会自动尝试重建分支,从而导致循环,因为每个新的构建都会不断失败 这是我的circle.yml文件 version: 1 machine: java: version: oraclejdk8 environment: # Java options JAVA_OPTS:

我正在尝试使用CircleCI构建Android项目,但每次运行构建时,构建都会在配置构建任务中完成,我会收到以下消息:

在试图推断代码信息时发生了一些错误。

此外,当这种情况发生时,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
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

通过以下方法解决了问题

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

Final 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
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

通过以下方法解决了问题

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

Final 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
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

另外,
version:1
不是CircleCI 1.0设计规范的一部分,也不应该存在。大多数阶段,let
test
可以有不同的步骤
pre
发生在CircleCI推断的命令之前,而
post
发生在之后
override
告诉CircleCi不要使用推断命令,而只使用您指定的命令。此外,
version:1
不是CircleCi 1.0设计规范的一部分,也不应该存在。大多数阶段,让
测试
可以有不同的步骤
pre
发生在CircleCI推断的命令之前,而
post
发生在之后<代码>覆盖告诉CircleCi不要使用推断命令,而只使用您指定的命令。