mirror of
https://github.com/TeamAmaze/AmazeFileManager.git
synced 2026-10-17 05:08:00 +08:00
3af6c67615
Fixes #2985. Also added convenience method to run a Callable in main thread.
177 lines
5.4 KiB
Groovy
177 lines
5.4 KiB
Groovy
// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
|
|
|
buildscript {
|
|
ext {
|
|
kotlin_version = "1.5.0"
|
|
robolectricVersion = '4.3.1'
|
|
glideVersion = '4.11.0'
|
|
sshjVersion = '0.26.0'
|
|
jcifsVersion = '2.1.6'
|
|
fabSpeedDialVersion = '3.1.1'
|
|
roomVersion = '2.2.5'
|
|
bouncyCastleVersion = '1.68'
|
|
awaitilityVersion = "3.1.6"
|
|
androidMaterialVersion = "1.3.0"
|
|
androidXFragmentVersion = "1.3.0"
|
|
androidXAppCompatVersion = "1.2.0"
|
|
androidXTestVersion = "1.3.0"
|
|
androidXTestExtVersion = "1.1.2"
|
|
junitVersion = "4.13.2"
|
|
slf4jVersion = "1.7.25"
|
|
mockitoVersion = "3.9.0"
|
|
mockitoKotlinVersion = "3.2.0"
|
|
androidBillingVersion = "4.0.0"
|
|
junrarVersion = "7.4.0"
|
|
zip4jVersion = "2.6.4"
|
|
espressoVersion = "3.3.0"
|
|
androidXPrefVersion = "1.1.1"
|
|
materialDialogsVersion = "0.9.6.0"
|
|
jacocoVersion = "0.8.7"
|
|
}
|
|
repositories {
|
|
google()
|
|
maven {
|
|
url "https://plugins.gradle.org/m2/"
|
|
}
|
|
}
|
|
dependencies {
|
|
classpath 'com.android.tools.build:gradle:4.2.1'
|
|
classpath 'com.hiya:jacoco-android:0.2'
|
|
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
|
classpath 'com.akaita.android:easylauncher:1.3.1'
|
|
// NOTE: Do not place your application dependencies here; they belong
|
|
// in the individual module build.gradle files
|
|
}
|
|
}
|
|
|
|
plugins {
|
|
id "com.diffplug.spotless" version "5.14.2"
|
|
}
|
|
|
|
allprojects {
|
|
|
|
repositories {
|
|
google()
|
|
maven { url "https://jitpack.io" }
|
|
maven { url "https://jcenter.bintray.com" }
|
|
mavenCentral()
|
|
}
|
|
tasks.withType(Test) {
|
|
maxParallelForks = 4
|
|
maxHeapSize = "4g"
|
|
forkEvery = 4
|
|
failFast = true
|
|
}
|
|
}
|
|
|
|
spotless {
|
|
java {
|
|
licenseHeaderFile 'spotless.license-java'
|
|
target 'app/src/**/*.java'
|
|
googleJavaFormat('1.7')
|
|
removeUnusedImports() // removes any unused imports
|
|
importOrder 'java', 'javax', 'org', 'com', 'android', 'androidx', ''
|
|
}
|
|
kotlin {
|
|
licenseHeaderFile 'spotless.license-java'
|
|
target 'app/src/**/*.kt'
|
|
ktlint("0.39.0").userData(['disabled_rules': 'no-wildcard-imports',
|
|
'kotlin_imports_layout': 'idea', 'indent_size': '4',
|
|
'max_line_length': '100'])
|
|
trimTrailingWhitespace()
|
|
indentWithSpaces()
|
|
endWithNewline()
|
|
}
|
|
}
|
|
|
|
configurations {
|
|
robo16
|
|
robo17
|
|
robo18
|
|
robo19
|
|
robo21
|
|
robo22
|
|
robo23
|
|
robo24
|
|
robo25
|
|
robo26
|
|
robo27
|
|
robo28
|
|
robo29
|
|
}
|
|
|
|
dependencies {
|
|
robo16 "org.robolectric:android-all:4.1.2_r1-robolectric-r1"
|
|
robo17 "org.robolectric:android-all:4.2.2_r1.2-robolectric-r1"
|
|
robo18 "org.robolectric:android-all:4.3_r2-robolectric-r1"
|
|
robo19 "org.robolectric:android-all:4.4_r1-robolectric-r2"
|
|
robo21 "org.robolectric:android-all:5.0.2_r3-robolectric-r0"
|
|
robo22 "org.robolectric:android-all:5.1.1_r9-robolectric-r2"
|
|
robo23 "org.robolectric:android-all:6.0.1_r3-robolectric-r1"
|
|
robo24 "org.robolectric:android-all:7.0.0_r1-robolectric-r1"
|
|
robo25 "org.robolectric:android-all:7.1.0_r7-robolectric-r1"
|
|
robo26 "org.robolectric:android-all:8.0.0_r4-robolectric-r1"
|
|
robo27 "org.robolectric:android-all:8.1.0-robolectric-4611349"
|
|
robo28 "org.robolectric:android-all:9-robolectric-4913185-2"
|
|
robo29 "org.robolectric:android-all:10-robolectric-5803371"
|
|
}
|
|
|
|
def robolectricDependencies = "${rootProject.buildDir.path}/robolectric"
|
|
|
|
task fetchRobolectricDependencies(type: Copy) {
|
|
from configurations.robo16
|
|
from configurations.robo17
|
|
from configurations.robo18
|
|
from configurations.robo19
|
|
from configurations.robo21
|
|
from configurations.robo22
|
|
from configurations.robo23
|
|
from configurations.robo24
|
|
from configurations.robo25
|
|
from configurations.robo26
|
|
from configurations.robo27
|
|
from configurations.robo28
|
|
from configurations.robo29
|
|
into robolectricDependencies
|
|
}
|
|
|
|
subprojects {
|
|
afterEvaluate {
|
|
if (project.plugins.hasPlugin("com.android.application") || project.plugins.hasPlugin("com.android.library")) {
|
|
android {
|
|
testOptions.unitTests.all {
|
|
systemProperty 'robolectric.offline', 'true'
|
|
systemProperty 'robolectric.dependency.dir', robolectricDependencies
|
|
}
|
|
}
|
|
|
|
tasks.withType(Test) {
|
|
it.dependsOn fetchRobolectricDependencies
|
|
}
|
|
}
|
|
if (project.plugins.hasPlugin("jacoco-android")){
|
|
android {
|
|
testOptions.unitTests.all {
|
|
jacoco {
|
|
excludes = ['jdk.internal.*']
|
|
}
|
|
}
|
|
}
|
|
}
|
|
dependencies {
|
|
compileOnly 'com.github.pengrad:jdk9-deps:1.0'
|
|
|
|
if (project.hasProperty('kapt')) {
|
|
kapt 'javax.xml.bind:jaxb-api:2.3.1'
|
|
kapt 'com.sun.xml.bind:jaxb-core:2.3.0.1'
|
|
kapt 'com.sun.xml.bind:jaxb-impl:2.3.2'
|
|
}
|
|
|
|
annotationProcessor 'javax.xml.bind:jaxb-api:2.3.1'
|
|
annotationProcessor 'com.sun.xml.bind:jaxb-core:2.3.0.1'
|
|
annotationProcessor 'com.sun.xml.bind:jaxb-impl:2.3.2'
|
|
}
|
|
}
|
|
|
|
}
|