10

当我尝试在终端中使用“flutter run”在 android 上运行应用程序时,出现以下错误...

/C:/Users/Acer/AppData/Roaming/Pub/Cache/hosted/pub.dartlang.org/provider-3.2.0/lib/src/delegate_widget.dart:194:18: Error: Superclass has no method named 'inheritFromElement'.
    return super.inheritFromElement(ancestor, aspect: aspect);
                 ^^^^^^^^^^^^^^^^^^
/C:/Users/Acer/AppData/Roaming/Pub/Cache/hosted/pub.dartlang.org/provider-3.2.0/lib/src/provider.dart:259:19: Error: The method 'inheritFromWidgetOfExactType' isn't defined for the class 'BuildContext'.
 - 'BuildContext' is from 'package:flutter/src/widgets/framework.dart' ('/D:/Flutter/flutter/packages/flutter/lib/src/widgets/framework.dart').
Try correcting the name to the name of an existing method, or defining a method named 'inheritFromWidgetOfExactType'.
        ? context.inheritFromWidgetOfExactType(type) as InheritedProvider<T>
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/C:/Users/Acer/AppData/Roaming/Pub/Cache/hosted/pub.dartlang.org/provider-3.2.0/lib/src/provider.dart:260:19: Error: The method 'ancestorInheritedElementForWidgetOfExactType' isn't defined for the class 'BuildContext'.
 - 'BuildContext' is from 'package:flutter/src/widgets/framework.dart' ('/D:/Flutter/flutter/packages/flutter/lib/src/widgets/framework.dart').
Try correcting the name to the name of an existing method, or defining a method named 'ancestorInheritedElementForWidgetOfExactType'.
        : context.ancestorInheritedElementForWidgetOfExactType(type)?.widget
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
/C:/Users/Acer/AppData/Roaming/Pub/Cache/hosted/pub.dartlang.org/flutter_svg-0.18.1/lib/src/picture_provider.dart:50:59: Error: No named parameter with 
the name 'nullOk'.
        context != null ? Localizations.localeOf(context, nullOk: true) : null,
                                                          ^^^^^^
/D:/Flutter/flutter/packages/flutter/lib/src/widgets/localizations.dart:413:17: Context: Found this candidate, but the arguments don't match.
  static Locale localeOf(BuildContext context) {
                ^^^^^^^^
                                                                        

FAILURE: Build failed with an exception.

* Where:
Script 'D:\Flutter\flutter\packages\flutter_tools\gradle\flutter.gradle' line: 991

* What went wrong:
Execution failed for task ':app:compileFlutterBuildDebug'.
> Process 'command 'D:\Flutter\flutter\bin\flutter.bat'' finished with non-zero exit value 1

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.    

* Get more help at https://help.gradle.org

BUILD FAILED in 1m 50s
Running Gradle task 'assembleDebug'...
Running Gradle task 'assembleDebug'... Done                       121.0s
Exception: Gradle task assembleDebug failed with exit code 1

问题是昨天它工作正常,但今天它显示此错误消息。请帮助解决它。

4

6 回答 6

10

更新提供程序版本 4.3.3 它将解决问题

于 2021-02-11T07:03:51.043 回答
2

编辑 - 用颤振 2 出来,它不会工作。答案现在已过时

当我切换到主频道时遇到了这个问题。不得不降级

flutter channel stable && flutter upgrade

解决了这个问题

于 2021-02-04T16:53:57.870 回答
2

在过去的 3 天里,我遇到了同样的问题。如果您不想使用降级的 Flutter 版本,我仍然有一个解决方案:首先,更新您的 Flutter 版本,以防您使用以下方式降级它:

flutter upgrade

在您的终端中。

正如您在调试控制台中注意到的那样,您正在使用提供程序

版本 3.2.0

从错误输出。我认为如果您使用的提供程序版本大于

版本 4.0.0

只需替换provider: ^3.2.0provider: ^4.0.0

(您可以在 pubspec.yaml 文件中进行调整)

那么它将起作用。

试一试,让我知道这是否能解决问题:)

于 2021-06-15T18:48:16.573 回答
1

只需将 provider: ^3.2.0 替换为 provider: ^4.0.0 它对我有用(你可以在 pubspec.yaml 文件中调整它)

于 2022-02-26T12:07:58.807 回答
0

您可能在“稳定”以外的频道中升级了颤振。在这种情况下,最简单的解决方案是简单地打开一个终端并运行 (type) flutter downgrade

于 2021-02-03T08:20:18.540 回答
0

请将您的依赖项升级到最新版本。我自己找到解决方案。由于复制了旧版本上的完整代码而发生此错误,现在最新版本启用了空安全,所以这就是问题的原因。

于 2021-06-03T15:07:36.690 回答