我在 Android 库项目 (build.gradle) 中定义了一些构建类型:
android {
defaultConfig {
...
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
debug {
testCoverageEnabled true
}
premium {
initWith release
matchingFallbacks = ['release']
}
}
libraryVariants.all { variant ->
variant.outputs.all {
def variantName = variant.name == "release" ? "-" : "-${variant.name}-"
outputFileName = "LibName${variantName}${defaultConfig.versionName}.aar"
}
}
}
而且,我们在同一个 build.gradle 中提供了 Javadoc 任务:
task javadoc(type: Javadoc) {
source = android.sourceSets.main.java.srcDirs
options.memberLevel = JavadocMemberLevel.PUBLIC
exclude 'com/abc/some_package_name/implementation/**'
}
现在,我会从 Javadoc 中排除一些高级课程:
task javadoc(type: Javadoc) {
...
exclude 'com/abc/some_package_name/premium/class_name.java'
}
我想创建一个额外的 Gradle 任务,这将有助于保留上述排除的 class_name.java(用于高级构建)。
是否可以使用自定义 gradle 任务?