0

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 同期メッセージ出力:

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>

ご協力いただきありがとうございます。

4

1 に答える 1

1

プロジェクトにモジュールを追加しています(コメントで説明したように)

このリンクで Simperium モジュール プロジェクトの外観を見ることができます。github.com/Simperium/simperium-android このプロジェクトをアプリケーションのモジュールとして追加しただけです

Gradle はSimperium モジュールbuild.gradle内を処理しようとしています。

https://github.com/Simperium/simperium-android/blob/develop/build.gradle

root/build.gradleこのファイル内には、Simperium プロジェクトの で定義された関数がいくつかあります。

def gitHash() {..}
def gitDescribe() {..}
def gitVersion(){..}

これらの関数を最上位 build.gradleファイル内にコピーする必要があります。

root
|--app
|----build.gradle
|--build.gradle   <- here
|--settings.gradle
于 2015-11-05T12:38:59.520 に答える