flutter/packages/flutter_tools/gradle
Gray Mackall 7e97cf7521
Reland "Identify and re-throw our dependency checking errors in flutter.groovy" (#150128)
The original approach in https://github.com/flutter/flutter/pull/149609 didn't work when the Flutter Gradle plugin was applied using the deprecated script apply - the kotlin portion couldn't resolve the custom exception defined in `flutter.groovy`:
```
e: /Users/mackall/development/flutter/flutter/packages/flutter_tools/gradle/src/main/kotlin/dependency_version_checker.gradle.kts:238:23: Unresolved reference: DependencyValidationException
e: /Users/mackall/development/flutter/flutter/packages/flutter_tools/gradle/src/main/kotlin/dependency_version_checker.gradle.kts:263:23: Unresolved reference: DependencyValidationException
e: /Users/mackall/development/flutter/flutter/packages/flutter_tools/gradle/src/main/kotlin/dependency_version_checker.gradle.kts:288:23: Unresolved reference: DependencyValidationException
e: /Users/mackall/development/flutter/flutter/packages/flutter_tools/gradle/src/main/kotlin/dependency_version_checker.gradle.kts:313:23: Unresolved reference: DependencyValidationException
Warning: Flutter was unable to detect project Gradle, Java, AGP, and KGP versions. Skipping dependency version checking. Error was: org.gradle.internal.exceptions.LocationAwareException: Script '/Users/mackall/development/flutter/flutter/packages/flutter_tools/gradle/src/main/kotlin/dependency_version_checker.gradle.kts' line: 238
Script compilation errors:

  Line 238:                 throw DependencyValidationException(errorMessage)
                                  ^ Unresolved reference: DependencyValidationException

  Line 263:                 throw DependencyValidationException(errorMessage)
                                  ^ Unresolved reference: DependencyValidationException

  Line 288:                 throw DependencyValidationException(errorMessage)
                                  ^ Unresolved reference: DependencyValidationException

  Line 313:                 throw DependencyValidationException(errorMessage)
                                  ^ Unresolved reference: DependencyValidationException
```

This new approach of setting one of the [`extra` properties](https://docs.gradle.org/current/dsl/org.gradle.api.Project.html#N14FF7) works in both cases (tested with the `camera_android` example app, which uses the script apply, and a freshly created counter app). 

It also removes some brittleness in that we don't have to unwrap the exception anymore, and aren't subject to breaking if Gradle decides one day to wrap our custom exception 1 layer deeper in additional exceptions.
2024-06-13 19:58:59 +00:00
..
src/main Reland "Identify and re-throw our dependency checking errors in flutter.groovy" (#150128) 2024-06-13 19:58:59 +00:00
.dartignore License update (#45373) 2019-11-27 15:04:02 -08:00
aar_init_script.gradle Allows adding a storage 'realm' to the storage base URL (#131951) 2023-08-09 23:26:05 +00:00
app_plugin_loader.gradle Reland "Warn when Gradle plugins are applied using the legacy apply script method (#140103) 2023-12-19 16:03:23 +00:00
build.gradle.kts Format all kotlin according to ktlint (#143390) 2024-02-14 17:58:18 +00:00
flutter_proguard_rules.pro Reland #39157 (#39798) 2019-09-17 08:19:33 -07:00
flutter.gradle Reland "Warn when Gradle plugins are applied using the legacy apply script method (#140103) 2023-12-19 16:03:23 +00:00
manual_migration_settings.gradle.md Don't import plugins that don't support android in settings.gradle (#54407) 2020-04-12 08:55:03 -07:00
module_plugin_loader.gradle Reland (2): "Fix how Gradle resolves Android plugin" (#142498) 2024-02-19 18:07:33 +00:00
resolve_dependencies.gradle Allows adding a storage 'realm' to the storage base URL (#131951) 2023-08-09 23:26:05 +00:00
settings_aar.gradle.tmpl
settings.gradle.kts Format all kotlin according to ktlint (#143390) 2024-02-14 17:58:18 +00:00
settings.gradle.legacy_versions Remove license statements in template files. (#57268) 2020-06-15 09:30:05 -07:00