Fix use of deprecated buildDir in Android templates/tests/examples (#157560)

Replace deprecated `Project.buildDir` [getter](https://docs.gradle.org/current/javadoc/org/gradle/api/Project.html#getBuildDir()) and [setter](https://docs.gradle.org/current/javadoc/org/gradle/api/Project.html#setBuildDir(java.io.File)) uses.
This commit is contained in:
Gray Mackall 2024-11-06 13:34:23 -08:00 committed by GitHub
parent 2e23f7b30e
commit b8e56e3063
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
23 changed files with 63 additions and 55 deletions

View File

@ -13,10 +13,12 @@ allprojects {
}
}
rootProject.buildDir = '../build'
Directory newBuildDir = rootProject.layout.buildDirectory.dir("../../build").get()
rootProject.layout.buildDirectory.value(newBuildDir)
subprojects {
project.buildDir = "${rootProject.buildDir}/${project.name}"
def newSubprojectBuildDir = newBuildDir.dir(project.name)
project.layout.buildDirectory.value(newSubprojectBuildDir)
}
subprojects {
project.evaluationDependsOn(':app')
@ -30,5 +32,5 @@ subprojects {
}
tasks.register("clean", Delete) {
delete rootProject.buildDir
delete rootProject.layout.buildDirectory
}

View File

@ -9,10 +9,10 @@ allprojects {
}
}
rootProject.buildDir = '../build'
rootProject.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir("../../build").get())
subprojects {
project.buildDir = "${rootProject.buildDir}/${project.name}"
project.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir(project.name).get())
}
subprojects {
project.evaluationDependsOn(':app')
@ -25,5 +25,5 @@ subprojects {
}
tasks.register("clean", Delete) {
delete rootProject.buildDir
delete rootProject.layout.buildDirectory
}

View File

@ -26,5 +26,5 @@ allprojects {
}
tasks.register("clean", Delete) {
delete rootProject.buildDir
delete rootProject.layout.buildDirectory
}

View File

@ -34,10 +34,10 @@ project.getTasks().withType(JavaCompile){
options.compilerArgs << "-Xlint:all" << "-Werror"
}
rootProject.buildDir = '../build'
rootProject.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir("../../build").get())
subprojects {
project.buildDir = "${rootProject.buildDir}/${project.name}"
project.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir(project.name).get())
project.evaluationDependsOn(':app')
dependencyLocking {
@ -50,5 +50,5 @@ subprojects {
}
tasks.register("clean", Delete) {
delete rootProject.buildDir
delete rootProject.layout.buildDirectory
}

View File

@ -28,8 +28,8 @@ android {
sourceSets {
applicationVariants.all { variant ->
main.assets.srcDirs += "${project.buildDir}/intermediates/flutter/${variant.name}/deferred_assets"
main.jniLibs.srcDirs += "${project.buildDir}/intermediates/flutter/${variant.name}/deferred_libs"
main.assets.srcDirs += "${project.layout.buildDirectory.get()}/intermediates/flutter/${variant.name}/deferred_assets"
main.jniLibs.srcDirs += "${project.layout.buildDirectory.get()}/intermediates/flutter/${variant.name}/deferred_libs"
}
}

View File

@ -29,10 +29,10 @@ allprojects {
}
}
rootProject.buildDir = '../build'
rootProject.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir("../../build").get())
subprojects {
project.buildDir = "${rootProject.buildDir}/${project.name}"
project.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir(project.name).get())
}
subprojects {
project.evaluationDependsOn(':app')
@ -46,5 +46,5 @@ subprojects {
}
tasks.register("clean", Delete) {
delete rootProject.buildDir
delete rootProject.layout.buildDirectory
}

View File

@ -20,5 +20,5 @@ allprojects {
}
tasks.register("clean", Delete) {
delete rootProject.buildDir
delete rootProject.layout.buildDirectory
}

View File

@ -9,14 +9,14 @@ allprojects {
}
}
rootProject.buildDir = "../build"
rootProject.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir("../../build").get())
subprojects {
project.buildDir = "${rootProject.buildDir}/${project.name}"
project.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir(project.name).get())
}
subprojects {
project.evaluationDependsOn(":app")
}
tasks.register("clean", Delete) {
delete rootProject.buildDir
delete rootProject.layout.buildDirectory
}

View File

@ -237,10 +237,10 @@ allprojects {
}
}
rootProject.buildDir = '../build'
rootProject.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir("../../build").get())
subprojects {
project.buildDir = "${rootProject.buildDir}/${project.name}"
project.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir(project.name).get())
}
subprojects {
project.evaluationDependsOn(':app')
@ -254,7 +254,7 @@ subprojects {
}
tasks.register("clean", Delete) {
delete rootProject.buildDir
delete rootProject.layout.buildDirectory
}
''';

View File

@ -9,14 +9,14 @@ allprojects {
}
}
rootProject.buildDir = '../build'
rootProject.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir("../../build").get())
subprojects {
project.buildDir = "${rootProject.buildDir}/${project.name}"
project.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir(project.name).get())
}
subprojects {
project.evaluationDependsOn(':app')
}
tasks.register("clean", Delete) {
delete rootProject.buildDir
delete rootProject.layout.buildDirectory
}

View File

@ -13,10 +13,10 @@ allprojects {
}
}
rootProject.buildDir = file("../build")
rootProject.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir("../../build").get())
subprojects {
project.buildDir = file("${rootProject.buildDir}/${project.name}")
project.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir(project.name).get())
}
subprojects {
project.evaluationDependsOn(":app")
@ -30,5 +30,5 @@ subprojects {
}
tasks.register<Delete>("clean") {
delete(rootProject.buildDir)
delete(rootProject.layout.buildDirectory)
}

View File

@ -13,10 +13,10 @@ allprojects {
}
}
rootProject.buildDir = '../build'
rootProject.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir("../../build").get())
subprojects {
project.buildDir = "${rootProject.buildDir}/${project.name}"
project.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir(project.name).get())
}
subprojects {
project.evaluationDependsOn(':app')
@ -30,5 +30,5 @@ subprojects {
}
tasks.register("clean", Delete) {
delete rootProject.buildDir
delete rootProject.layout.buildDirectory
}

View File

@ -30,7 +30,7 @@ gradle.getGradle().projectsLoaded { g ->
if (!androidPluginBuildOutputDir.exists()) {
androidPluginBuildOutputDir.mkdirs()
}
subproject.buildDir = androidPluginBuildOutputDir
subproject.layout.buildDirectory.fileValue(androidPluginBuildOutputDir)
}
}
def _mainModuleName = binding.variables['mainModuleName']

View File

@ -1289,7 +1289,7 @@ class FlutterPlugin implements Plugin<Project> {
}
}
// Copy the native assets created by build.dart and placed in build/native_assets by flutter assemble.
// The `$project.buildDir` is '.android/Flutter/build/' instead of 'build/'.
// The `$project.layout.buildDirectory` is '.android/Flutter/build/' instead of 'build/'.
String buildDir = "${getFlutterSourceDirectory()}/build"
String nativeAssetsDir = "${buildDir}/native_assets/android/jniLibs/lib"
from("${nativeAssetsDir}/${abi}") {
@ -1416,7 +1416,7 @@ class FlutterPlugin implements Plugin<Project> {
// This path is not flavor specific and must only be added once.
// If support for flavors is added to native assets, then they must only be added
// once per flavor; see https://github.com/dart-lang/native/issues/1359.
String nativeAssetsDir = "${project.buildDir}/../native_assets/android/jniLibs/lib/"
String nativeAssetsDir = "${project.layout.buildDirectory.get()}/../native_assets/android/jniLibs/lib/"
project.android.sourceSets.main.jniLibs.srcDir(nativeAssetsDir)
configurePlugins(project)
detectLowCompileSdkVersionOrNdkVersion()

View File

@ -14,7 +14,7 @@ task clean(type: Delete) {
const String _lazyCleanTaskDeclaration = '''
tasks.register("clean", Delete) {
delete rootProject.buildDir
delete rootProject.layout.buildDirectory
}
''';

View File

@ -5,14 +5,17 @@ allprojects {
}
}
rootProject.buildDir = file("../build")
val newBuildDir: Directory = rootProject.layout.buildDirectory.dir("../../build").get()
rootProject.layout.buildDirectory.value(newBuildDir)
subprojects {
project.buildDir = file("${rootProject.buildDir}/${project.name}")
val newSubprojectBuildDir: Directory = newBuildDir.dir(project.name)
project.layout.buildDirectory.value(newSubprojectBuildDir)
}
subprojects {
project.evaluationDependsOn(":app")
}
tasks.register<Delete>("clean") {
delete(rootProject.buildDir)
delete(rootProject.layout.buildDirectory)
}

View File

@ -5,14 +5,17 @@ allprojects {
}
}
rootProject.buildDir = file("../build")
val newBuildDir: Directory = rootProject.layout.buildDirectory.dir("../../build").get()
rootProject.layout.buildDirectory.value(newBuildDir)
subprojects {
project.buildDir = file("${rootProject.buildDir}/${project.name}")
val newSubprojectBuildDir: Directory = newBuildDir.dir(project.name)
project.layout.buildDirectory.value(newSubprojectBuildDir)
}
subprojects {
project.evaluationDependsOn(":app")
}
tasks.register<Delete>("clean") {
delete(rootProject.buildDir)
delete(rootProject.layout.buildDirectory)
}

View File

@ -29,8 +29,8 @@ android {
sourceSets {
applicationVariants.all { variant ->
main.assets.srcDirs += "${project.buildDir}/intermediates/flutter/${variant.name}/deferred_assets"
main.jniLibs.srcDirs += "${project.buildDir}/intermediates/flutter/${variant.name}/deferred_libs"
main.assets.srcDirs += "${project.layout.buildDirectory}/intermediates/flutter/${variant.name}/deferred_assets"
main.jniLibs.srcDirs += "${project.layout.buildDirectory}/intermediates/flutter/${variant.name}/deferred_libs"
}
}

View File

@ -181,7 +181,7 @@ task clean(type: Delete) {
expect(bufferLogger.traceText, contains('Migrating "clean" Gradle task to lazy declaration style.'));
expect(topLevelGradleBuildFile.readAsStringSync(), equals('''
tasks.register("clean", Delete) {
delete rootProject.buildDir
delete rootProject.layout.buildDirectory
}
'''));
});

View File

@ -82,16 +82,16 @@ allprojects {
}
}
rootProject.buildDir = '../build'
rootProject.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir("../../build").get())
subprojects {
project.buildDir = "${rootProject.buildDir}/${project.name}"
project.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir(project.name).get())
}
subprojects {
project.evaluationDependsOn(':app')
}
tasks.register("clean", Delete) {
delete rootProject.buildDir
delete rootProject.layout.buildDirectory
}
''');
appBuildGradle.writeAsStringSync(r'''

View File

@ -83,8 +83,8 @@ class DeferredComponentModule {
sourceSets {
applicationVariants.all { variant ->
main.assets.srcDirs += "${project.buildDir}/intermediates/flutter/${variant.name}/deferred_assets"
main.jniLibs.srcDirs += "${project.buildDir}/intermediates/flutter/${variant.name}/deferred_libs"
main.assets.srcDirs += "${project.layout.buildDirectory.get()}/intermediates/flutter/${variant.name}/deferred_assets"
main.jniLibs.srcDirs += "${project.layout.buildDirectory.get()}/intermediates/flutter/${variant.name}/deferred_libs"
}
}

View File

@ -126,16 +126,16 @@ class BasicDeferredComponentsConfig extends DeferredComponentsConfig {
}
}
rootProject.buildDir = '../build'
rootProject.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir("../../build").get())
subprojects {
project.buildDir = "${rootProject.buildDir}/${project.name}"
project.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir(project.name).get())
}
subprojects {
project.evaluationDependsOn(':app')
}
tasks.register("clean", Delete) {
delete rootProject.buildDir
delete rootProject.layout.buildDirectory
}
''';

View File

@ -36,9 +36,9 @@ allprojects {
mavenCentral()
}
}
rootProject.buildDir = '../build'
rootProject.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir("../../build").get())
subprojects {
project.buildDir = "${rootProject.buildDir}/${project.name}"
project.layout.buildDirectory.value(rootProject.layout.buildDirectory.dir(project.name).get())
}
subprojects {
project.evaluationDependsOn(':app')
@ -51,7 +51,7 @@ subprojects {
}
}
tasks.register("clean", Delete) {
delete rootProject.buildDir
delete rootProject.layout.buildDirectory
}
''';