[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$ftR47xq1vdBrX0ax9u4pjV56MBptiTHzkF1vRxjfANsI":3},{"code":4,"message":5,"data":6},200,"成功",{"id":7,"createdAt":8,"title":9,"content":10,"summary":11,"image":12,"uid":13,"user":14,"categoryId":21,"category":22,"subCategoryId":24,"subCategory":25,"comments":27,"status":17,"reason":28,"notice":28,"visitCount":29,"commentCount":30,"keywords":31},159,"2025-04-25T02:23:30.481Z","Parameter specified as non-null is null: method com.flutter.gradle.VersionUtils.mostRecentSemanticVersion, parameter....","记一次flutter编译报错的问题.\n\n我的`pubspec.yaml`中引入了`better_player_plus`和`flutter_vlc_player`，配置是：\n\n```pubspec.yaml\n...\ndependencies:\n  flutter:\n    sdk: flutter\n\n  # The following adds the Cupertino Icons font to your application.\n  # Use with the CupertinoIcons class for iOS style icons.\n  cupertino_icons: ^1.0.8\n  better_player_plus: ^1.0.8\n  flutter_vlc_player: ^7.4.3\n\ndev_dependencies:\n  flutter_test:\n    sdk: flutter\n...\n```\n\n## 问题1\n> Launching lib/main.dart on sdk gphone64 x86 64 in debug mode...\nRunning Gradle task 'assembleDebug'...\nWarning: Flutter support for your project's Android Gradle Plugin version (Android Gradle Plugin version 8.1.0) will soon be dropped. Please upgrade your Android Gradle Plugin version to a version of at least Android Gradle Plugin version 8.3.0 soon.\nAlternatively, use the flag \"--android-skip-build-dependency-validation\" to bypass this check.\n>\n> Potential fix: Your project's AGP version is typically defined in the plugins block of the `settings.gradle` file (/Users/edy/Desktop/test/android/settings.gradle), by a plugin with the id of com.android.application. \nIf you don't see a plugins block, your project was likely created with an older template version. In this case it is most likely defined in the top-level build.gradle file (/Users/edy/Desktop/test/android/build.gradle) by the following line in the dependencies block of the buildscript: \"classpath 'com.android.tools.build:gradle:\u003Cversion>'\".\n>\n>\n> FAILURE: Build failed with an exception.\n>\n> * What went wrong:\nA problem occurred configuring project ':better_player_plus'.\n> Parameter specified as non-null is null: method com.flutter.gradle.VersionUtils.mostRecentSemanticVersion, parameter version1\n>\n> * Try:\n> Run with --stacktrace option to get the stack trace.\n> Run with --info or --debug option to get more log output.\n> Run with --scan to get full insights.\n> Get more help at https://help.gradle.org.\n>\n> BUILD FAILED in 1m 15s\nError: Gradle task assembleDebug failed with exit code 1\n\n\n报错截图：\n![fllutter gradle error](https://image.xinwei.ltd/Pasted%20Graphic1745546641474.png)\n\n这个问题出现在我使用了flutter的库：`flutter_vlc_player: ^7.4.3`，但我本地的flutter sdk环境是`3.27.0-0.1.pre`的问题.\n\n在运行Android的时候，我Android studio中默认的gradle默认是`8.1.0`的，所以也会有警告.\n\n### 解决办法\n- 1. 升级本地的flutter sdk\n```terminal\nflutter channel beta # 切换到最新的beta channel\n```\n- 2. 更新dart版本\n之前是\n```pubspec.yaml\n...\nenvironment:\n  sdk: ^3.6.0-216.1.beta\n...\n```\n升级后：\n```pubspec.yaml\n...\nenvironment:\n  sdk: ^3.7.0\n...\n```\n- 3. 配置android/settings.gradle\n之前：\n```settings.gradle\n...\nplugins {\n    id \"dev.flutter.flutter-plugin-loader\" version \"1.0.0\"\n    id \"com.android.application\" version \"8.1.0\" apply false\n    id \"org.jetbrains.kotlin.android\" version \"1.8.22\" apply false\n}\n\ninclude \":app\"\n```\n配置后：\n```settings.gradle\n...\nplugins {\n    id \"dev.flutter.flutter-plugin-loader\" version \"1.0.0\"\n    id \"com.android.application\" version \"8.3.0\" apply false // 升级这里\n    id \"org.jetbrains.kotlin.android\" version \"1.8.22\" apply false\n}\n\ninclude \":app\"\n```\n\n到这一步，再编译会有新的报错，错误在下面贴出来，并解决。\n\n## 问题2\n> Launching lib/main.dart on sdk gphone64 x86 64 in debug mode...\nRunning Gradle task 'assembleDebug'...\n>\n> FAILURE: Build failed with an exception.\n>\n>* Where:\nBuild file '/Users/edy/Desktop/test/android/app/build.gradle' line: 2\n>\n> * What went wrong:\nAn exception occurred applying plugin request [id: 'com.android.application']\n> Failed to apply plugin 'com.android.internal.version-check'.\n   > Minimum supported Gradle version is 8.4. Current version is 8.3. If using the gradle wrapper, try editing the distributionUrl in /Users/edy/Desktop/test/android/gradle/wrapper/gradle-wrapper.properties to gradle-8.4-all.zip\n>\n> * Try:\n> Run with --stacktrace option to get the stack trace.\n> Run with --info or --debug option to get more log output.\n> Run with --scan to get full insights.\n> Get more help at https://help.gradle.org.\n>\n> BUILD FAILED in 27s\nError: Gradle task assembleDebug failed with exit code 1\n\n问题截图：\n![flutter gradle 8.4](https://image.xinwei.ltd/Pasted%20Graphic%2011745547492901.png)\n\n从截图中已经看出解决办法了，提示我们要修改`gradle-wrapper.properties`的版本\n\n### 解决办法\n修改`android/gradle/wrapper/gradle-wrapper.properties`配置\n之前配置是：\n```gradle-wrapper.properties\ndistributionBase=GRADLE_USER_HOME\ndistributionPath=wrapper/dists\nzipStoreBase=GRADLE_USER_HOME\nzipStorePath=wrapper/dists\ndistributionUrl=https\\://services.gradle.org/distributions/gradle-8.3-all.zip\n```\n更新配置后：\n```gradle-wrapper.properties\ndistributionBase=GRADLE_USER_HOME\ndistributionPath=wrapper/dists\nzipStoreBase=GRADLE_USER_HOME\nzipStorePath=wrapper/dists\ndistributionUrl=https\\://services.gradle.org/distributions/gradle-8.4-all.zip\n```\n\n再次运行，问题解决了。\n\n希望对大家有借鉴意义。\n\n\n\n","记一次flutter编译报错的问题.","https://image.xinwei.ltd/Pasted%20Graphic1745546641474.png",499668042977349,{"phone":15,"userId":13,"nickName":16,"vipType":17,"avatar":18,"sign":19,"createdAt":20},"13121171998","全栈老韩",1,"https://image.xinwei.ltd/images/IMG_5430.JPG","全栈工程师，擅长iOS App开发、前端（vue、react、nuxt、小程序&Taro）开发、Flutter、React Native、后端（midwayjs、golang、express、koa）开发、docker容器、seo优化等。","2024-01-01T16:14:30.305Z",2,{"id":21,"name":23},"IT技术",11,{"id":24,"name":26,"parentId":21},"Flutter",[],"",75,0,"gradle version,gradle error,flutter gradle,gradle,android gradle,better_player_plus,flutter_vlc_player"]