2017-02-11 7 views
0

У меня есть проект с двумя модулями. Первый модуль (модуль библиотеки) имеет следующие зависимости:Ошибка Travis CI с зависимостями поддержки

dependencies { 
    compile 'com.android.support:support-annotations:25.1.1' 
    compile 'com.android.support:support-v4:25.1.1' 
    compile 'com.android.support:recyclerview-v7:25.1.1' 
} 

Второго модуль (модуль приложения) имеет такие:

dependencies { 
    compile 'com.android.support:appcompat-v7:25.1.1' 
    compile project(":library-module-above") 
} 

Это мой файл .travis.yml:

language: android 
jdk: oraclejdk8 

android: 
    components: 
    - tools 
    - platform-tools 
    - build-tools-25.0.2 
    - android-25 
    - extra-android-m2repository 
    - extra-google-m2repository 
    - extra-android-support 

branches: 
    only: 
    - master 

script: 
    - ./gradlew build connectedCheck --stacktrace 

before_cache: 
    - rm -f $HOME/.gradle/caches/modules-2/modules-2.lock 
    - rm -fr $HOME/.gradle/caches/*/plugin-resolution/ 

cache: 
    directories: 
    - $HOME/.gradle/caches/ 
    - $HOME/.gradle/wrapper/ 
    - $HOME/.android/build-cache 

строить на Travis терпит неудачу, потому что не может найти поддержки Apis (RecyclerView, LayoutManager, аннотации поддержки).

Если я запустил ту же команду (./gradlew build connectedCheck --stacktrace) на моей локальной машине, сборка проходит с 0 ошибками, нахождением всех символов.

Являются ли мои компоненты Travis правильными? Или что-то еще я пропустил?

EDIT

Ошибки о «не может найти символы» не остановить сборку. Я не заметил ошибку о лицензиях:

* What went wrong: 
A problem occurred configuring project ':app'. 
> You have not accepted the license agreements of the following SDK components: 
    [Android SDK Build-Tools 25.0.2, Android SDK Platform 25]. 

Я написал решение в ответах.

+0

Пожалуйста, разместите точные сообщения об ошибках из журнала Travis CI. –

+0

@ Code-Apprentice Я нашел решение на официальной странице Gristub на Travis, поэтому я добавил ответ с этими ссылками. Спасибо, в любом случае. –

+0

Вы должны по-прежнему редактировать свой вопрос с сообщениями об ошибках, чтобы сделать его более полезным для будущих посетителей. –

ответ

1

Я решил добавить еще один компонент tools. Я нашел решение на официальной странице Трэвиса Гитхуба.

Здесь: https://github.com/travis-ci/docs-travis-ci-com/issues/779

И здесь: https://github.com/travis-ci/travis-ci/issues/6801

Мои конечные .travis.yml компоненты:

components: 
    - tools 
    - platform-tools 
    - tools # used above api 25.x 
    - build-tools-25.0.2 
    - android-25 
    - extra-android-support 
    - extra-android-m2repository 
    - extra-google-m2repository 

Теперь все работает правильно.

+0

У вас есть инструменты, перечисленные дважды. Это преднамеренно? – Armand

+0

@Armand Да, это была проблема, которую вы можете найти на странице Github в Трэвисе –