2017-02-03 14 views
1

通常のJavaプロジェクト用のgradleプラグインがあり、Android StudioのassembleRelease/assembleDebugに似た追加のビルドバリアント/タスクが追加されていますか?src/release,src/debugそれぞれのバリアントをビルドするときにデフォルトを上書きするリソースが含まれていますか?Android StudioのassembleRelease/assembleDebugに似た、dev/releaseビルドを切り替えるためのJavaプロジェクト(intellij)のgradleの使い方

私が必要としているのは、devとリリースのバージョン(場合によってはイメージの一部のようなアセットでさえも)に異なる設定ファイルを使用する方法です。すぐに使用できるソリューションがありますか、私は自分のカスタムタスクを定義し、必要なファイルをすべて手動でコピーする必要がありますか?

答えて

1

あなたはあなたのような特定のGradleの構成(リリースまたはデバッグ)を実行する可能性のenvプロパティに応じて、プロファイルの挙動をMavenのに似て実装することができます:

if (project.hasProperty('env') && project.getProperty('env') == 'prod') { 
    apply from: 'gradle/production.gradle' 
} else { 
    apply from: 'gradle/development.gradle' 
} 

リンク:https://blog.gradle.org/maven-pom-profiles

かで特定のタスクを上書き同様の方法:

build.gradle

task build(type: GradleBuild) { 
    if (project.hasProperty('env') && project.getProperty('env') == 'prod') { 
     buildFile = 'gradle/production.gradle' 
    } else { 
     buildFile = 'gradle/development.gradle' 
    } 
    tasks = ['hello'] 
} 

development.gradle

task hello { 
    doLast { 
     println "hello from the other build." 
    } 
} 

リンク:https://docs.gradle.org/current/userguide/organizing_build_logic.html#sec:external_build

関連する問題