| /* |
| * Copyright 2020 The Android Open Source Project |
| * |
| * 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 androidx.build.LibraryGroups |
| import androidx.build.LibraryType |
| import androidx.build.LibraryVersions |
| import androidx.build.SdkHelperKt |
| import androidx.build.SupportConfig |
| |
| import static androidx.build.dependencies.DependenciesKt.* |
| |
| plugins { |
| id("AndroidXPlugin") |
| id("kotlin") |
| id("kotlin-kapt") |
| } |
| |
| dependencies { |
| implementation(KOTLIN_STDLIB) |
| compileOnly(AUTO_SERVICE_ANNOTATIONS) |
| kapt(AUTO_SERVICE_PROCESSOR) |
| compileOnly(GRADLE_INCAP_HELPER) |
| kapt(GRADLE_INCAP_HELPER_PROCESSOR) |
| implementation(AUTO_COMMON) |
| implementation(JAVAPOET) |
| |
| testImplementation(project(":hilt:hilt-common")) |
| testImplementation(JUNIT) |
| testImplementation(TRUTH) |
| testImplementation(GOOGLE_COMPILE_TESTING) |
| testImplementation(HILT_ANDROID) |
| testImplementation fileTree( |
| dir: "${new File(project(":hilt:hilt-lifecycle-viewmodel").buildDir, "libJar")}", |
| include : "*.jar") |
| testImplementation fileTree( |
| dir: "${new File(project(":hilt:hilt-work").buildDir, "libJar")}", |
| include : "*.jar") |
| testImplementation fileTree( |
| dir: "${new File(project.buildDir, "extractedJar")}", |
| include : "*.jar") |
| testImplementation fileTree( |
| dir: "${SdkHelperKt.getSdkPath(project)}/platforms/$SupportConfig.COMPILE_SDK_VERSION/", |
| include : "android.jar") |
| } |
| |
| // Extract Hilt classes.jar to be used for compile-testing. |
| tasks.register("extractHiltJar", Copy).configure { |
| def aarPath = project.configurations.testRuntimeClasspath.find { |
| it.path.contains("com/google/dagger/hilt-android/") && it.name.endsWith(".aar") |
| } |
| from project.zipTree(aarPath) |
| into new File(project.buildDir, "extractedJar") |
| include "classes.jar" |
| } |
| |
| tasks.named("compileKotlin").configure { |
| dependsOn(":hilt:hilt-lifecycle-viewmodel:jarDebug") |
| dependsOn(":hilt:hilt-work:jarDebug") |
| dependsOn(":hilt:hilt-compiler:extractHiltJar") |
| } |
| |
| androidx { |
| name = "AndroidX Hilt Extension Compiler" |
| type = LibraryType.COMPILER_PLUGIN |
| mavenVersion = LibraryVersions.HILT |
| mavenGroup = LibraryGroups.HILT |
| inceptionYear = "2020" |
| description = "AndroidX Hilt Extension Compiler" |
| } |