颤振: 对丢失静态目标的未实现处理

  1. 我正在运行我的第一个扑动项目
  2. 我创建了一个示例项目,我能够运行的应用程序 模拟器

我已经编辑了文件 main.dart

主,飞镖

import 'package:flutter/material.dart';


void main() => runApp(MaterialApp(home: Text('Hello World')));

现在我明白了一个错误:

enter image description here

Pubspec.yaml

name: flutter_app
description: A new Flutter application.


# The following defines the version and build number for your application.
# A version number is three numbers separated by dots, like 1.2.43
# followed by an optional build number separated by a +.
# Both the version and the builder number may be overridden in flutter
# build by specifying --build-name and --build-number, respectively.
# In Android, build-name is used as versionName while build-number used as versionCode.
# Read more about Android versioning at https://developer.android.com/studio/publish/versioning
# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion.
# Read more about iOS versioning at
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
version: 1.0.0+1


environment:
sdk: ">=2.1.0 <3.0.0"


dependencies:
flutter:
sdk: flutter


# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^0.1.2


dev_dependencies:
flutter_test:
sdk: flutter




# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec


# The following section is specific to Flutter.
flutter:


# The following line ensures that the Material Icons font is
# included with your application, so that you can use the icons in
# the material Icons class.
uses-material-design: true


# To add assets to your application, add an assets section, like this:
# assets:
#  - images/a_dot_burr.jpeg
#  - images/a_dot_ham.jpeg


# An image asset can refer to one or more resolution-specific "variants", see
# https://flutter.dev/assets-and-images/#resolution-aware.


# For details regarding adding assets from package dependencies, see
# https://flutter.dev/assets-and-images/#from-packages


# To add custom fonts to your application, add a fonts section here,
# in this "flutter" section. Each entry in this list should have a
# "family" key with the font family name, and a "fonts" key with a
# list giving the asset and other descriptors for the font. For
# example:
# fonts:
#   - family: Schyler
#     fonts:
#       - asset: fonts/Schyler-Regular.ttf
#       - asset: fonts/Schyler-Italic.ttf
#         style: italic
#   - family: Trajan Pro
#     fonts:
#       - asset: fonts/TrajanPro.ttf
#       - asset: fonts/TrajanPro_Bold.ttf
#         weight: 700
#
# For details regarding fonts from package dependencies,
# see https://flutter.dev/custom-fonts/#from-packages
110902 次浏览

你的代码对我有用。

你试过热重启吗?快捷方式是 CTRL + SHIFT + ,或者只需单击控制台窗口中带有绿色圆箭头的按钮

我不确定这个错误是什么,因为我无法复制它。然而,这更像是你的应用程序应该看起来的样子。试试这个,看看有没有用。

import 'package:flutter/material.dart';


void main() => runApp(MyApp());


class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Text('Hello World'),
);
}
}

只要再次编译这个项目,它就会工作。发生错误是因为静态变量在可执行文件上难以编译,而且不是动态的。如果您重新加载更改,它将不会重新生成可执行文件(apk) ,所以这就是为什么您需要重新生成应用程序。

同样的错误一开始也发生在我身上... ... 但是当我做一个“热重启”时,它起作用了

再次运行此命令

'flutter run'

应该可以

您更改了 myApp 并创建了自己的 Materials ialApp,所以您需要做的就是将名称更改为 aterialApp,而不是重新启动热点击播放按钮。会成功的。 谢谢

只需删除构建并重新编译。它对我很有用。使用以下代码:

flutter clean
flutter run

发生这种情况的原因之一是你第一次运行应用程序,然后你做了一些改变,重新加载。如果不重新加载,停止执行,并重新从头运行应用程序,这个错误就不会出现。

通常,一个完整的应用程序重新启动后需要大量的逻辑变化,如转换为 StatelessWidget

安卓工作室中使用颤振热重启

Flutter Hot Restart

只要按下红色的停止按钮,然后再次点击播放按钮,就可以了:)

检查你的进口。 应该是的 import 'package:your_app...'不是 import 'file://C/path/your_app/

热重新启动将工作。但问题的根源可能如下。

你创建了一个新项目。您已经删除了样板代码,并尝试在没有有状态或无状态小部件的情况下进行修改。Flutter 尝试在 build ()方法下重新构建小部件。但是,当您热重新加载,颤振可能无法解决您已更新。

这种错误的另一个例子是,当我们在一个类中创建一个新的静态变量(静态 String 标记 = “ abc”;)并试图在另一个屏幕中引用它们(Constants.token)时,在我们加载的时候 flutter 未能解决这样的静态问题。但是当我们热启动的时候它工作的很好。

重启应用程序在我的案子里起作用了。

正如其他答案提到的,你可以“热重载”或重建你的应用程序来解决这个问题。

但是 原因我得到了这个错误,是我已经编辑了 pubspec.yaml文件,当编辑 pubspec.yaml文件,你应该停止和重建的 完整的应用程序。

导航到 main.dart 文件所在的 lib 文件夹并运行以下命令:

PS C: Users mobile _ app lib > 飞得很干净

PS C: Users mobile _ app lib > 摇摆的酒吧

PS C: Users mobile _ app lib > 颤动跑

不过,如果您遇到空安全问题,我希望您先调试应用程序。在我遇到的情况中,这个错误是试图在带有上下文的静态小部件之外运行类组件的结果,因此类在构建时间之前被加载,导致应用程序无法启动。

我也面临着同样的情况,我通过再次运行应用程序来修复它,这个问题是由于你对代码应用了很多改变并按下热重载按钮造成的。 enter image description here

我是在实现 TextEditingController的时候发生的在我创建了一个内含参数的函数之后所以当我为控制器编写 addListener的时候下面的错误发生了,

Unimplemented handling of missing static target flutter

但是在从 addListener函数中删除参数之后,问题仍然存在,并且中断了我的应用程序,甚至我在 Android Studio中进行了热重新加载。

解决方案:
大多数情况和上面说的差不多,但是没有什么不同,我终止了我的应用程序,重新运行了应用程序,并且解决了这个问题。

希望这能帮到大家。

如果您已经添加了热重新加载扩展,然后退出,并尝试重新启动热重新加载。

应该可以。