Добавление модуля Simperium в проект приводит к тому, что метод Gradle DSL не найден: ошибка 'gitVersion()'
Я получаю ошибку после добавления Simperium
Код приложения модуля к моему приложению. Это дает мне Gradle sync failed: Gradle DSL method not found: 'gitVersion()'
ошибка. Как я могу это исправить?
код build.gradle здесь:
buildscript {
repositories {
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
classpath 'io.fabric.tools:gradle:1.+'
}
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
repositories {
maven { url 'https://maven.fabric.io/public' }
}
android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "sdn.com.sd"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:23.0.1'
compile 'com.android.support:support-annotations:23.0.1'
compile 'com.android.support:support-v13:23.0.1'
compile 'com.android.support:recyclerview-v7:23.0.1'
compile project(':SDUtils')
compile 'com.android.support:design:23.0.1'
compile 'com.android.support:cardview-v7:23.1.0'
compile project(':SDAnalytics')
compile project(':SDEditor')
compile('com.crashlytics.sdk.android:crashlytics:2.5.2@aar') {
transitive = true;
}
compile files('libs/gcm.jar')
compile project(':SDNetworking')
compile project(':PassCode')
compile files('libs/eventbus-3.0.0-beta1.jar')
compile project(':Simperium')
}
Вывод сообщения Gradle Sync:
Error:(13, 0) Gradle DSL method not found: 'gitVersion()'
Possible causes:<ul><li>The project 'SD' may be using a version of Gradle that does not contain the method.
<a href="open.wrapper.file">Open Gradle wrapper file</a></li><li>The build file may be missing a Gradle plugin.
<a href="apply.gradle.plugin">Apply Gradle plugin</a></li>
Заранее спасибо за вашу помощь.
1 ответ
Вы добавляете модуль в свой проект (как вы объяснили в своем комментарии)
Вы можете посмотреть проект модуля Simperium по этой ссылке. github.com/Simperium/simperium-android Я просто добавил этот проект как модуль в свое приложение
Gradle пытается обработать build.gradle
внутри модуля Simperium.
https://github.com/Simperium/simperium-android/blob/develop/build.gradle
Внутри этого файла есть некоторые функции, определенные в root/build.gradle
Симпериум-проект.
def gitHash() {..}
def gitDescribe() {..}
def gitVersion(){..}
Вы должны скопировать эти функции внутри вашего верхнего уровня build.gradle
файл.
root
|--app
|----build.gradle
|--build.gradle <- here
|--settings.gradle