一尘不染

flutter 1.9.1 + hotfix.2-构建appbundle失败,但实际上产生了一个appbundle

flutter

自从将flutter 1.9.1 + hotfix.2升级到我运行时flutter build appbundle,flutter以错误结束:

Initializing gradle...                                              0,9s
Resolving dependencies...                                           3,6s
Running Gradle task 'bundleRelease'...
Running Gradle task 'bundleRelease'... Done                       114,5s
Gradle build failed to produce an Android bundle package.

但实际上它确实产生了一个有效的附件,flutter build appbundle -v并以:

[   +2 ms] 161 actionable tasks: 5 executed, 156 up-to-date
[ +361 ms] Running Gradle task 'bundleRelease'... (completed in 75,1s)
[   +7 ms] "flutter appbundle" took 80.137ms.
Gradle build failed to produce an Android bundle package.

#0      throwToolExit (package:flutter_tools/src/base/common.dart:28:3)
#1      _buildGradleProjectV2 (package:flutter_tools/src/android/gradle.dart:780:7)
#2      _asyncThenWrapperHelper.<anonymous closure> (dart:async-patch/async_patch.dart:71:64)
#3      _rootRunUnary (dart:async/zone.dart:1132:38)
#4      _CustomZone.runUnary (dart:async/zone.dart:1029:19)
#5      _FutureListener.handleValue (dart:async/future_impl.dart:137:18)
#6      Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:678:45)
#7      Future._propagateToListeners (dart:async/future_impl.dart:707:32)
#8      Future._completeWithValue (dart:async/future_impl.dart:522:5)
#9      _AsyncAwaitCompleter.complete (dart:async-patch/async_patch.dart:30:15)
#10     _completeOnAsyncReturn (dart:async-patch/async_patch.dart:288:13)

似乎在完成该捆绑包后gradle崩溃了。任何人都有相同的问题或想法吗?

我的Flutter医生:位于C:\ src \ flutter的Flutter 1.9.1 +
hotfix.2版本•框架修订版2d2a1ffec9(8天前),2019-09-06 18:39:49
-0700•引擎修订版b863200c37•Dart版本2.5 .0

[√] Android工具链-为Android设备开发(Android SDK版本29.0.2)•位于C:\ Users \ dirkb \ AppData
\ Local \ Android \ sdk的Android SDK•未配置Android NDK位置(可选;可用于本机性能分析支持)
)•平台android-29,构建工具29.0.2•Java二进制文件位于:C:\ Program Files \ Android \ Android
Studio \ jre \ bin \ java•Java版本OpenJDK运行时环境(内部版本1.8.0_202-release-1483-
b03)•接受所有Android许可。

[√] Android Studio(3.5版)•C:\ Program Files \ Android \ Android Studio中的Android
Studio•Flutter插件版本39.0.3•Dart插件版本191.8423•Java版本OpenJDK运行时环境(内部版本1.8.0_202-release-1483
-b03)


阅读 358

收藏
2020-08-13

共1个答案

一尘不染

这并不奇怪,它是一个错误。即使一切顺利,gradle也会显示一条错误消息。

编辑build.gradle并更改

classpath 'com.android.tools.build:gradle:3.5.0'

至:

classpath 'com.android.tools.build:gradle:3.4.2'

细节

我在 tools.build:gradle:3.5.0中 遇到了两个错误:

首先,local.properties每次编译时都要重新构建(不要签入!)

a)与 gradle一起 使用flutter build appbundle --release -v,结果是sdk.dir=C:\\....\\AppData\\Local\\Android\\Sdk(无论哪个工具版本)

b)与 IntelliJsdk.dir=C:/..../AppData/Local/Android/Sdk

不幸的是,tools.build:gradle:3.5.0在阅读他们创建的路径时会失败tools.build:gradle:3.4.2

我要使用v3.5.0工具执行此操作:

set ANDROID_HOME=C:/Users/msc/AppData/Local/Android/Sdk
(在Windows上为斜杠,而不是反斜杠!)

在那之后, gradle 完成了构建并完成了 Gradle构建,但未能生成Android捆绑包。 这很奇怪,因为 gradle
实际上完成了全部工作。该文件位于:\build\app\outputs\bundle\release\app-release.aab

那么,错误信息没有错误?

显然,gradle.tools v3.5.0至少在Windows上存在路径名问题。

还有…另一个提示:检查android\key.properties文件并确保storeFile=设置正确。

key.properties storeFile=c:/pathToMyKeyStore.jks

*注意:您应该在路径中使用/,而不是*

2020-08-13