build.gradle 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. if (componentTag){
  2. apply plugin: 'com.android.application'
  3. apply plugin: 'com.enation.javashop.aspectjrt'
  4. }else{
  5. apply plugin: 'com.android.library'
  6. }
  7. apply plugin: 'kotlin-android'
  8. apply plugin: 'kotlin-android-extensions'
  9. apply plugin: 'kotlin-kapt'
  10. kapt {
  11. arguments {
  12. arg("moduleName", project.getName())
  13. }
  14. }
  15. android {
  16. compileSdkVersion target_sdk_version
  17. buildToolsVersion build_tools_version
  18. defaultConfig {
  19. if (componentTag){
  20. applicationId "com.wdkl.ncs.android.component.setting"
  21. multiDexEnabled true
  22. }
  23. minSdkVersion min_sdk_version
  24. targetSdkVersion target_sdk_version
  25. versionCode app_version_code
  26. versionName app_version
  27. dataBinding {
  28. enabled = true
  29. }
  30. testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
  31. }
  32. lintOptions {
  33. abortOnError false
  34. }
  35. buildTypes {
  36. release {
  37. minifyEnabled false
  38. proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
  39. }
  40. }
  41. sourceSets {
  42. main.java.srcDirs += 'src/main/code'
  43. if(componentTag){
  44. main.manifest.srcFile 'src/main/ApkBuildDir/AndroidManifest.xml'
  45. }else{
  46. main.manifest.srcFile 'src/main/AndroidManifest.xml'
  47. main.java {
  48. exclude 'apkbuild/**'
  49. }
  50. }
  51. }
  52. }
  53. dependencies {
  54. compile fileTree(include: ['*.jar'], dir: 'libs')
  55. androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
  56. exclude group: 'com.android.support', module: 'support-annotations'
  57. })
  58. /**
  59. * 单元测试
  60. */
  61. testCompile 'junit:junit:4.12'
  62. /**
  63. * Android基础依赖库
  64. */
  65. compile "com.android.support:design:$support_library_version"
  66. compile "com.android.support:support-v4:$support_library_version"
  67. compile "com.android.support:cardview-v7:$support_library_version"
  68. /**
  69. * 公共库依赖
  70. */
  71. compile project(':middleware')
  72. /**
  73. * 内存泄漏监控
  74. */
  75. if(componentTag){
  76. debugCompile 'com.squareup.leakcanary:leakcanary-android:1.5.1'
  77. releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5.1'
  78. testCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5.1'
  79. }
  80. /**
  81. * Dagger编译依赖
  82. */
  83. kapt 'com.google.dagger:dagger-compiler:2.7'
  84. /**
  85. * Kotlin依赖
  86. */
  87. kapt 'com.android.databinding:compiler:2.3.3'
  88. /**
  89. * 路由注解处理器
  90. */
  91. kapt "com.enation.geamtear:jrouter-compiler:$router_version"
  92. /**
  93. * constraint-layout布局依赖
  94. */
  95. compile 'com.android.support.constraint:constraint-layout:1.1.0-beta5'
  96. }
  97. /**
  98. * kawo组件化框架配置
  99. */
  100. if(componentTag){
  101. kawo {
  102. /**
  103. * Aop注解排除Jar
  104. */
  105. aspectExcludeJarFilter 'com.enation.geamtear.pay','AlipaySdk'
  106. }
  107. }