| /* |
| * Copyright (C) 2017. Uber Technologies |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| import com.android.build.gradle.api.BaseVariant |
| import net.ltgt.gradle.errorprone.CheckSeverity |
| |
| plugins { |
| id('com.android.application') |
| } |
| |
| android { |
| compileSdkVersion deps.build.compileSdkVersion |
| |
| defaultConfig { |
| applicationId "com.uber.myapplication" |
| minSdkVersion deps.build.minSdkVersion |
| targetSdkVersion deps.build.targetSdkVersion |
| versionCode 1 |
| versionName "1.0" |
| } |
| compileOptions { |
| sourceCompatibility JavaVersion.VERSION_11 |
| targetCompatibility JavaVersion.VERSION_11 |
| } |
| |
| lintOptions { |
| abortOnError false |
| } |
| |
| DomainObjectSet<BaseVariant> variants = getApplicationVariants() // or getLibraryVariants() in libraries |
| variants.addAll(getTestVariants()) |
| variants.addAll(getUnitTestVariants()) |
| variants.configureEach { variant -> |
| variant.getJavaCompileProvider().configure { |
| options.compilerArgs += [ |
| "-XDcompilePolicy=simple", |
| "-Xplugin:ErrorProne -XepOpt:NullAway:AnnotatedPackages=com.uber", |
| ] |
| options.fork = true |
| options.forkOptions.jvmArgs = [ |
| "--add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED", |
| "--add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED", |
| "--add-exports=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED", |
| "--add-exports=jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED", |
| "--add-exports=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED", |
| "--add-exports=jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED", |
| "--add-exports=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED", |
| "--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED", |
| "--add-opens=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED", |
| "--add-opens=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED" |
| ] |
| } |
| } |
| } |
| |
| dependencies { |
| implementation deps.support.appcompat |
| annotationProcessor deps.build.errorProneCore |
| annotationProcessor project(":nullaway") |
| annotationProcessor project(path: ":sample-library-model") |
| |
| testImplementation deps.test.junit4 |
| } |
| |
| spotless { |
| java { |
| target 'src/*/java/**/*.java' |
| } |
| } |