アンドロイドのGradleのconfigureグローバル変数は、長所と短所のグローバルライブラリのバージョンを管理します


extは、変数を定義します

Gradleでは、主にキーワード内線を使用して達成すること。
異なる位置に定義されたextは、範囲と行動様式その後の使用は同じではありません。

  1. buildscript {}内のルート/ build.gradleに定義され
ext {  
	va = 'aaa'
	vb = 'bbb'  
}
或
ext.va = 'aaa'
ext.vb = 'bbb'

上記のように、2つのグローバル変数が定義されています。その他のGradle直接ファイルvavbまたは"$va""$vb"することができます。

  1. 他の位置のルートに> build.gradleはbuildscriptのGradleまたは同じレベルのallprojectsである。また、グローバル変数。
    ときに呼び出すニーズrootProject.ext.va"$rootProject.ext.va"

  2. Gardleは、現在のドメイン内でのみ有効な一般的に定義されています。非グローバル


グローバルバージョン管理

ライブラリのさまざまなバージョンは、上記グローバルEXTにおいて、ある構成と統一位置、に依存するであろう。Gradleのか、コンフィギュレーションを設定するために、一つのファイルの追加。その後から適用されます:2つのグローバル変数の位置に導入される前にも言ったように、適切な位置に導入された「config.gradle」は注意を払うべきである従ってください。
ASはでルート/ buildscriptで定義されています

ext {
	refs = [
		junit : "junit:junit:4.12"
	]
}
//再来个这样的
ext.refs.testRunner = "com.android.support.test:runner:1.0.2"

参考文献は、上記で定義されたマップです。あなたはありext.refs=[:]空のマップ、その後の再利用を定義します。
使用::

implementation refs.junit
implementation refs.testRunner

ベネフィット

統一管理。
またはライン上の場所を探しに行く、グループ名またはライブラリのバージョンを見つけます。


バージョンASインテリジェンスのヒントによってできない最新情報。AS3.4は更新はおろか、設定関連の依存関係を参照し、プロジェクト構造にすることはできません。
この事をクラックするには、依存関係Gradleの元のファイルを書き込むしようとしている、とあなたが更新したいライブラリを確認したいときに、中settings.gradleにコンパイルのGradleにこのファイルを使用します。project(":app").buildFileName = 'app_origin.gradle'

包装失敗

原因で味のproductFlavorsの構成に、今日、AS3.4会った{ minsdkVersion configs.minsdkVersion}コマンドとASパッケージを使用し、タスクをパッケージ化することはできません与えられています。


公開された400元の記事 ウォンの賞賛364 ビュー162万+

おすすめ

転載: blog.csdn.net/jjwwmlp456/article/details/89973590