4

同じ質問Duplicateを見つけました。しかし、私にはmavenの依存関係はありません。サブプロジェクトに依存しています。

1 つのフレーバーに対してのみ 1 つのプロジェクトの依存関係を使用したい。これは私のbuild.gradleです

dependencies {
    secureCompile project(':relatedProjects:gd')
}

android {
    compileSdkVersion "Google Inc.:Google APIs:19"
    buildToolsVersion "18.1.1"

     productFlavors {
        google {}
        secure {
            packageName "com.some_secure.package"
        }
     }
}

これは、ビルド コマンドのコンソール出力です。

./gradlew clean assembleDebug 

FAILURE: Build failed with an exception.

* Where:
Build file '/home/kulik/project/Notate/notateolearis/notateandroid/build.gradle' line: 27

* What went wrong:
A problem occurred evaluating project ':someproject'.
> Could not find method secureCompile() for arguments [project ':relatedProjects:gd'] on project ':someproject'.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 15.957 secs
4

1 に答える 1

4

ソリューションが確立されます。フレーバーは使用する前に宣言する必要があるため、適切なビルド gradle は次のとおりです。

   android {
       productFlavors {
           google {}
           secure {
               packageName "com.some_secure.package"
           }
       } 
       dependencies {
           secureCompile project(':relatedProjects:gd')
       }

       compileSdkVersion "Google Inc.:Google APIs:19"
       buildToolsVersion "18.1.1"
   }
于 2014-03-01T19:27:50.337 に答える