Использование Jenkins для сборки проекта android gradle не выполняется
Я пытаюсь настроить Jenkins на компьютер с OSX, и у меня проблема.
Когда я пытаюсь создать проект с моей учетной записью по умолчанию, все работает нормально, но как только я пытаюсь построить через Jenkins, сборка завершится неудачно со следующим выходом:
FAILURE: Build failed with an exception.
* What went wrong:
A problem occurred configuring project ':Project'.
> Failed to notify project evaluation listener.
> A problem occurred configuring project ':libraries:actionbarsherlock'.
> Failed to notify project evaluation listener.
> Could not resolve all dependencies for configuration ':libraries:actionbarsherlock:compile'.
> Could not find com.android.support:support-v4:13.0.0.
Required by:
workspace.libraries:actionbarsherlock:unspecified
My build.gradle для библиотек проекта: actionbarsherlock выглядит следующим образом:
buildscript {
repositories {
maven { url 'http://repo1.maven.org/maven2' }
}
dependencies {
classpath 'com.android.tools.build:gradle:0.4.2'
}
}
apply plugin: 'android-library'
dependencies {
compile 'com.android.support:support-v4:13.0.0'
}
android {
compileSdkVersion 17
buildToolsVersion "17.0.0"
defaultConfig {
minSdkVersion 7
targetSdkVersion 16
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
res.srcDirs = ['res']
}
}
}
Насколько я знаю, зависимость от com.android.support:support-v4:13.0.0 должна быть удовлетворена через локальный репозиторий maven, установленный через Android SDK Manager. Как я уже сказал, это работает при создании моей учетной записи пользователя, но, похоже, она не работает при попытке построить с Дженкинсом.
UPDATE
Мне удалось решить эту проблему, установив права пользователя на мою папку android-sdk. Проблема заключалась в том, что, хотя пользователь jenkins читал и записывал разрешения в корневую папку Android sdk, у него не было прав доступа к материалам, установленным через диспетчер sdk android.
Ответы
Ответ 1
Я смог решить эту проблему только сейчас для себя.
Шаги:
- Создайте файл в корневом каталоге вашего проекта под названием "local.properties"
- Поместите в файл только следующее:
sdk.dir =/дом/терпение/Android-студия/SDK
Затем перестройте, и он должен работать. Это было для Fedora Linux для справки.
Ответ 2
- Перейти к Jenkins > Управление Jenkins > Настройка системы
- Отметьте "Переменные среды"
- добавить имя: ANDROID_HOME, значение → ваш android sdk dir
- нажмите "добавить"
- СКАЧАТЬ СКАЧАТЬ СКАЧАТЬ
Ответ 3
Похоже, что Android SDK в вашем блоке jenkins не содержит установленного компонента "Android Support Repository".