Skip to content

Commit 1e677de

Browse files
committed
1:重写组件模块的Gradle脚本;
1 parent 7e403d3 commit 1e677de

File tree

7 files changed

+291
-101
lines changed

7 files changed

+291
-101
lines changed

build.gradle

Lines changed: 24 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,38 @@
11
// Top-level build file where you can add configuration options common to all sub-projects/modules.
22

33
buildscript {
4-
apply from: '/versions.gradle'
5-
6-
repositories {
7-
google()
8-
jcenter()
9-
}
4+
apply from: 'versions.gradle'
5+
addRepos(repositories)
106
dependencies {
11-
//classpath "com.android.tools.build:gradle:$localGradlePluginVersion"
12-
//$localGradlePluginVersion是gradle.properties中的数据
13-
classpath "com.android.tools.build:gradle:$localGradlePluginVersion"
7+
/* classpath deps.android_gradle_plugin*/
8+
classpath deps.android_gradle_plugin
9+
classpath deps.kotlin.plugin
10+
// NOTE: Do not place your application dependencies here; they belong
11+
// in the individual module build.gradle files
1412
}
1513
}
1614

1715
allprojects {
18-
repositories {
19-
google()
20-
jcenter()
21-
maven { url 'https://jitpack.io' }
22-
//支持arr包
23-
flatDir {
24-
dirs 'libs'
16+
addRepos(repositories)
17+
// Android dependency 'com.android.support:design' has different version for the compile (25.3.1) and runtime (25.4.0) classpath.
18+
// You should manually set the same version via DependencyResolution
19+
subprojects {
20+
project.configurations.all {
21+
resolutionStrategy.eachDependency { details ->
22+
if (details.requested.group == 'com.android.support'
23+
&& !details.requested.name.contains('multidex')) {
24+
details.useVersion "27.0.2"
25+
}
26+
}
2527
}
2628
}
29+
30+
// 组件缓存更新时间设置(默认每次build都更新)
31+
configurations.all {
32+
resolutionStrategy.cacheChangingModulesFor 0, 'minutes'
33+
}
2734
}
2835

2936
task clean(type: Delete) {
3037
delete rootProject.buildDir
31-
}
32-
38+
}

lib_common/build.gradle

Lines changed: 65 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,76 @@
11
apply plugin: 'com.android.library'
22

33
android {
4-
compileSdkVersion rootProject.ext.compileSdkVersion
4+
compileSdkVersion build_versions.target_sdk
55
defaultConfig {
6-
minSdkVersion rootProject.ext.minSdkVersion
7-
targetSdkVersion rootProject.ext.targetSdkVersion
8-
versionCode rootProject.ext.versionCode
9-
versionName rootProject.ext.versionName
6+
minSdkVersion build_versions.min_sdk
7+
targetSdkVersion build_versions.target_sdk
8+
versionCode 1
9+
versionName "1.0"
1010
}
11+
12+
13+
compileOptions {
14+
sourceCompatibility JavaVersion.VERSION_1_8
15+
targetCompatibility JavaVersion.VERSION_1_8
16+
}
17+
18+
buildTypes {
19+
release {
20+
buildConfigField "boolean", "LOG_DEBUG", "true"
21+
zipAlignEnabled false
22+
shrinkResources false
23+
minifyEnabled false
24+
debuggable true
25+
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
26+
}
27+
}
28+
1129
}
1230

1331
dependencies {
14-
api fileTree(dir: 'libs', include: ['*.jar'])
15-
//Android Support
16-
api "com.android.support:support-v4:$rootProject.supportLibraryVersion"
17-
api "com.android.support:appcompat-v7:$rootProject.supportLibraryVersion"
18-
api "com.android.support:design:$rootProject.supportLibraryVersion"
19-
api "com.android.support:percent:$rootProject.supportLibraryVersion"
20-
//网络请求相关
21-
api "com.squareup.retrofit2:retrofit:$rootProject.retrofitVersion"
22-
api "com.squareup.retrofit2:retrofit-mock:$rootProject.retrofitVersion"
23-
api "com.github.franmontiel:PersistentCookieJar:$rootProject.cookieVersion"
24-
//稳定的
25-
api "com.github.bumptech.glide:glide:$rootProject.glideVersion"
26-
api "com.orhanobut:logger:$rootProject.loggerVersion"
27-
api "org.greenrobot:eventbus:$rootProject.eventbusVersion"
28-
api "com.google.code.gson:gson:$rootProject.gsonVersion"
29-
api "com.github.chrisbanes:PhotoView:$rootProject.photoViewVersion"
30-
31-
api "com.jude:easyrecyclerview:$rootProject.easyRecyclerVersion"
32-
api "com.github.GrenderG:Toasty:$rootProject.toastyVersion"
32+
api fileTree(include: ['*.jar'], dir: 'libs')
33+
// Support libraries
34+
api deps.support.app_compat
35+
api deps.support.v4
36+
api deps.support.v13
37+
api deps.support.design
38+
api deps.support.cardview
39+
api deps.support.percent
40+
api deps.support.recyclerview
41+
api deps.constraint_layout
42+
43+
// RxJava and retrofit
44+
api deps.rx_android
45+
api deps.rxjava2
46+
api deps.retrofit.runtime
47+
api deps.retrofit.gson
48+
api deps.persistent_cookie
49+
50+
//Dagger
51+
api deps.dagger.runtime
52+
api deps.dagger.android
53+
api deps.dagger.android_support
54+
55+
// other
56+
api deps.kotlin.stdlib
57+
api deps.event_bus
58+
api deps.gson
59+
api deps.permission
60+
api deps.utils
61+
api deps.glide
62+
63+
//view
64+
api deps.photo_view
65+
api deps.easy_recycler
66+
api deps.material_dialog
67+
api deps.logger
68+
api deps.toasty
3369

3470
//router
35-
api "com.alibaba:arouter-api:$rootProject.routerVersion"
71+
api deps.arouter_api
72+
73+
//annotationProcessor
74+
annotationProcessor deps.dagger.android_support_compiler
75+
annotationProcessor deps.dagger.compiler
3676
}

module_app/build.gradle

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,18 +22,24 @@ android {
2222
}
2323
}
2424

25-
compileSdkVersion rootProject.ext.compileSdkVersion
25+
compileSdkVersion build_versions.target_sdk
2626
defaultConfig {
2727
applicationId "com.guiying.module"
28-
minSdkVersion rootProject.ext.minSdkVersion
29-
targetSdkVersion rootProject.ext.targetSdkVersion
30-
versionCode rootProject.ext.versionCode
31-
versionName rootProject.ext.versionName
28+
minSdkVersion build_versions.min_sdk
29+
targetSdkVersion build_versions.target_sdk
30+
versionCode 1
31+
versionName "1.0"
3232
multiDexEnabled true
3333
//打包时间
3434
resValue "string", "build_time", buildTime()
3535
}
3636

37+
38+
compileOptions {
39+
sourceCompatibility JavaVersion.VERSION_1_8
40+
targetCompatibility JavaVersion.VERSION_1_8
41+
}
42+
3743
buildTypes {
3844
release {
3945
//更改AndroidManifest.xml中预先定义好占位符信息
@@ -68,7 +74,7 @@ android {
6874

6975
dependencies {
7076
implementation fileTree(dir: 'libs', include: ['*.jar'])
71-
implementation 'com.android.support:multidex:1.0.2'
77+
implementation deps.support.multidex
7278
implementation project(':lib_common')
7379
if (!isModule.toBoolean()) {
7480
implementation project(':module_main')

module_girls/build.gradle

Lines changed: 22 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,21 +5,25 @@ if (isModule.toBoolean()) {
55
}
66

77
android {
8-
compileSdkVersion rootProject.ext.compileSdkVersion
8+
compileSdkVersion build_versions.target_sdk
99
defaultConfig {
10-
minSdkVersion rootProject.ext.minSdkVersion
11-
targetSdkVersion rootProject.ext.targetSdkVersion
12-
versionCode rootProject.ext.versionCode
13-
versionName rootProject.ext.versionName
10+
minSdkVersion build_versions.min_sdk
11+
targetSdkVersion build_versions.target_sdk
12+
versionCode 1
13+
versionName "1.0"
1414

15-
//ARouter
1615
javaCompileOptions {
1716
annotationProcessorOptions {
18-
arguments = [moduleName: project.getName()]
17+
arguments = [ moduleName : project.getName() ]
1918
}
2019
}
2120
}
2221

22+
compileOptions {
23+
sourceCompatibility JavaVersion.VERSION_1_8
24+
targetCompatibility JavaVersion.VERSION_1_8
25+
}
26+
2327
sourceSets {
2428
main {
2529
if (isModule.toBoolean()) {
@@ -34,10 +38,20 @@ android {
3438
}
3539
}
3640

41+
buildTypes {
42+
release {
43+
buildConfigField "boolean", "LOG_DEBUG", "true"
44+
zipAlignEnabled false
45+
shrinkResources false
46+
minifyEnabled false
47+
debuggable true
48+
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
49+
}
50+
}
3751
}
3852

3953
dependencies {
4054
implementation fileTree(dir: 'libs', include: ['*.jar'])
41-
annotationProcessor "com.alibaba:arouter-compiler:$rootProject.annotationProcessor"
55+
annotationProcessor deps.arouter_compiler
4256
implementation project(':lib_common')
4357
}

module_main/build.gradle

Lines changed: 21 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,22 +5,24 @@ if (isModule.toBoolean()) {
55
}
66

77
android {
8-
compileSdkVersion rootProject.ext.compileSdkVersion
8+
compileSdkVersion build_versions.target_sdk
99
defaultConfig {
10-
minSdkVersion rootProject.ext.minSdkVersion
11-
targetSdkVersion rootProject.ext.targetSdkVersion
12-
versionCode rootProject.ext.versionCode
13-
versionName rootProject.ext.versionName
10+
minSdkVersion build_versions.min_sdk
11+
targetSdkVersion build_versions.target_sdk
12+
versionCode 1
13+
versionName "1.0"
1414

15-
//ARouter
1615
javaCompileOptions {
1716
annotationProcessorOptions {
18-
arguments = [moduleName: project.getName()]
17+
arguments = [ moduleName : project.getName() ]
1918
}
2019
}
21-
vectorDrawables.useSupportLibrary = true
2220
}
2321

22+
compileOptions {
23+
sourceCompatibility JavaVersion.VERSION_1_8
24+
targetCompatibility JavaVersion.VERSION_1_8
25+
}
2426

2527
sourceSets {
2628
main {
@@ -36,11 +38,20 @@ android {
3638
}
3739
}
3840

39-
41+
buildTypes {
42+
release {
43+
buildConfigField "boolean", "LOG_DEBUG", "true"
44+
zipAlignEnabled false
45+
shrinkResources false
46+
minifyEnabled false
47+
debuggable true
48+
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
49+
}
50+
}
4051
}
4152

4253
dependencies {
4354
implementation fileTree(dir: 'libs', include: ['*.jar'])
44-
annotationProcessor "com.alibaba:arouter-compiler:$rootProject.annotationProcessor"
55+
annotationProcessor deps.arouter_compiler
4556
implementation project(':lib_common')
4657
}

module_news/build.gradle

Lines changed: 22 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,21 +5,25 @@ if (isModule.toBoolean()) {
55
}
66

77
android {
8-
compileSdkVersion rootProject.ext.compileSdkVersion
8+
compileSdkVersion build_versions.target_sdk
99
defaultConfig {
10-
minSdkVersion rootProject.ext.minSdkVersion
11-
targetSdkVersion rootProject.ext.targetSdkVersion
12-
versionCode rootProject.ext.versionCode
13-
versionName rootProject.ext.versionName
10+
minSdkVersion build_versions.min_sdk
11+
targetSdkVersion build_versions.target_sdk
12+
versionCode 1
13+
versionName "1.0"
1414

15-
//ARouter
1615
javaCompileOptions {
1716
annotationProcessorOptions {
18-
arguments = [moduleName: project.getName()]
17+
arguments = [ moduleName : project.getName() ]
1918
}
2019
}
2120
}
2221

22+
compileOptions {
23+
sourceCompatibility JavaVersion.VERSION_1_8
24+
targetCompatibility JavaVersion.VERSION_1_8
25+
}
26+
2327
sourceSets {
2428
main {
2529
if (isModule.toBoolean()) {
@@ -34,10 +38,20 @@ android {
3438
}
3539
}
3640

41+
buildTypes {
42+
release {
43+
buildConfigField "boolean", "LOG_DEBUG", "true"
44+
zipAlignEnabled false
45+
shrinkResources false
46+
minifyEnabled false
47+
debuggable true
48+
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
49+
}
50+
}
3751
}
3852

3953
dependencies {
4054
implementation fileTree(dir: 'libs', include: ['*.jar'])
41-
annotationProcessor "com.alibaba:arouter-compiler:$rootProject.annotationProcessor"
55+
annotationProcessor deps.arouter_compiler
4256
implementation project(':lib_common')
4357
}

0 commit comments

Comments
 (0)