CircleCI 2.0: ошибка при отмене маршалирования возвращаемого заголовка;Вложенное исключение: - PullRequest
1 голос
/ 12 июня 2019

Я создал несколько тестов пользовательского интерфейса эспрессо.Тесты отлично работают локально (эмулятор и реальное устройство).Но когда я пытаюсь запустить тест пользовательского интерфейса на CircleCI.Я получаю этот журнал ошибок

Задача: app: compileFossDebugAndroidTestKotlin Компиляция с демоном компиляции Kotlin не удалась java.rmi.UnmarshalException: Ошибка немаршалирования возвращаемого заголовка;вложенное исключение:

Невозможно очистить кэш JAR после компиляции, возможно, демон уже отключен: java.rmi.ConnectException: соединение с хостом отказано: 127.0.0.1;Вложенное исключение: java.net.ConnectException: соединение отклонено (соединение отклонено) Не ​​удалось подключиться к демону kotlin.Использование резервной стратегии.

Подобраны JAVA_TOOL_OPTIONS: -Xms512m

Задача: app: compileFossDebugAndroidTestKotlin FAILED

СБОЙ: ошибка сборки: исключение.

  • Что пошло не так: выполнение задачи не выполнено: app: compileFossDebugAndroidTestKotlin '.

Более подробная информация о журнале ошибок доступна здесь

Вот мой файл config.yml для кругов с заданием run-ui-tests

run-ui-tests:
    docker:
      - image: circleci/android@sha256:5cdc8626cc6f13efe5ed982cdcdb432b0472f8740fed8743a6461e025ad6cdfc
    environment:
      JVM_OPTS: -Xmx2048m
      GRADLE_OPTS: -Xmx1536m -XX:+HeapDumpOnOutOfMemoryError -Dorg.gradle.caching=true -Dorg.gradle.configureondemand=true -Dkotlin.compiler.execution.strategy=in-process -Dkotlin.incremental=false
    steps:
      - checkout
      - run:
          name: ANDROID_HOME
          command: echo "sdk.dir="$ANDROID_HOME > local.properties
      - run:
          name: restore files from ENV
          command: |
            echo $ROCKET_JKS_BASE64 | base64 --decode > Rocket.jks
            echo $ROCKET_PLAY_JSON | base64 --decode > app/rocket-chat.json
      - run:
          name: checkout Rocket.Chat.Kotlin.SDK
          command: git clone https://github.com/RocketChat/Rocket.Chat.Kotlin.SDK.git ../Rocket.Chat.Kotlin.SDK
      - restore_cache:
          key: kotlin-sdk-{{ .Revision }}
      - restore_cache:
          key: jars-{{ checksum "build.gradle" }}-{{ checksum  "app/build.gradle" }}
      - run:
          name: Accept licenses
          command: yes | sdkmanager --licenses || true
      - run:
          name: Download Dependencies
          command: ./gradlew androidDependencies
      - save_cache:
          paths:
            - ~/.gradle
          key: jars-{{ checksum "build.gradle" }}-{{ checksum  "app/build.gradle" }}
      - run:
          name: Setup emulator
          command: sdkmanager "system-images;android-22;default;armeabi-v7a" && echo "no" | avdmanager create avd -n test -k "system-images;android-22;default;armeabi-v7a"
      - run:
          name: Launch emulator
          command: export LD_LIBRARY_PATH=${ANDROID_HOME}/emulator/lib64:${ANDROID_HOME}/emulator/lib64/qt/lib && emulator64-arm -avd test -noaudio -no-boot-anim -no-window -accel auto -verbose
          background: true
      - run:
          name: Wait emulator
          command: |
            # wait for it to have booted
            circle-android wait-for-boot
            # unlock the emulator screen
            sleep 30
            adb shell input keyevent 82
      - run:
          name: Run EspressoTests
          command: ./gradlew connectedAndroidTest
      - store_artifacts:
          path: app/build/reports
          destination: reports
      - store_test_results:
          path: app/build/test-results

gradle.properties

android.enableJetifier=true
android.useAndroidX=true
org.gradle.jvmargs=-Xmx1536m

Другая конфигурация

compileSdk version           : 28
targetSdk version            : 28
kotlin version               : '1.3.31'

Проект имеет 2 варианта: «Фосс и игра» и 2 типа сборки: отладка и выпуск

Я испробовал все возможные решения, но ни один из них не работает.Любая помощь будет оценена.Спасибо

1 Ответ

1 голос
/ 13 июня 2019

Я встречаюсь с той же проблемой.

И, наконец, я удаляю свою папку кэша gradle (linux: ~ / .gradle), и эта проблема исчезает.

Вы можете сначала попытаться убить градла Деймона.

обновление: я обнаружил, что причина в отключении Gradle Deamon может решить эту проблему. добавить org.gradle.daemon = false в gradle.properties

update2: извините, все, причина, по которой эта мимерия слишком низкая на моем ECS (1 процессор, 1G памяти), я добавляю 1G swap и эта проблема исчезает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...