-
Notifications
You must be signed in to change notification settings - Fork 23
Expand file tree
/
Copy pathbuild.gradle
More file actions
81 lines (71 loc) · 2.53 KB
/
build.gradle
File metadata and controls
81 lines (71 loc) · 2.53 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
import com.android.build.gradle.BaseExtension
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
mavenCentral()
google()
}
dependencies {
classpath('com.android.tools.build:gradle:8.3.2')
// For displaying method/field counts when building with Gradle:
// https://github.com/KeepSafe/dexcount-gradle-plugin
classpath("com.getkeepsafe.dexcount:dexcount-gradle-plugin:4.0.0")
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
plugins {
id("java")
id("io.github.gradle-nexus.publish-plugin") version "1.3.0"
}
// Must be specified in root project for the gradle nexus publish plugin.
group = "com.launchdarkly"
base {
// Specified in the root project so Releaser's `publish-dry-run.sh` can see it in `./gradlew properties`
archivesName = "launchdarkly-android-client-sdk"
}
// Specified in gradle.properties
version = version
allprojects {
repositories {
mavenLocal()
// Before LaunchDarkly release artifacts get synced to Maven Central they are here along with snapshots:
maven { url = uri("https://oss.sonatype.org/content/groups/public/") }
google()
mavenCentral()
}
}
def configureAndroidModule(Project project) {
project.extensions.configure(BaseExtension) { androidExt ->
androidExt.lint { abortOnError = false }
androidExt.compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
}
}
nexusPublishing {
packageGroup = "com.launchdarkly"
repositories {
sonatype{
nexusUrl.set(uri("https://ossrh-staging-api.central.sonatype.com/service/local/"))
snapshotRepositoryUrl.set(uri("https://central.sonatype.com/repository/maven-snapshots/"))
}
}
}
subprojects { subproject ->
plugins.withId("com.android.application") {
configureAndroidModule(subproject)
}
plugins.withId("com.android.library") {
configureAndroidModule(subproject)
}
tasks.withType(JavaCompile).configureEach {
// enable deprecation checks
options.compilerArgs += "-Xlint:deprecation"
}
tasks.withType(Test).configureEach {
// Allow EasyMock/CGLIB to use reflection on Java base classes when running on newer JDKs.
jvmArgs += ["--add-opens", "java.base/java.lang=ALL-UNNAMED"]
}
}