flutter的构建似乎存在问题。
我总是需要执行 RUN >每次我将应用程序运行到模拟器或设备时,颤动完全重启。
否则,该应用加载了我的代码在2周前开始编码时所拥有的脚手架主体。
Here's the current source on pastebin
children: <Widget>[
new Opacity(
opacity: loader_visible ? 1.0 : 0.0,
child:
new Container(
padding: const EdgeInsets.all(32.0),
child: new CircularProgressIndicator()
)
),
我猜测flutter缓存了旧代码并且从不打扰用新代码替换它,但我不确定它是如何实现的Hot Reload。无论如何,我不认为在我们已经执行完全重建时需要加载旧缓存。
答案 0 :(得分:23)
您可以运行flutter run
。
但这很可能是您的IDE或类似问题,因为flutter run会创建一个全新的apk。而热重装仅推动修改。
尝试使用命令行r
运行您的应用,然后按R
或myButton.addConstraint(NSLayoutConstraint(item: myButton, attribute: .height, relatedBy: .equal, toItem: myButton, attribute: .width, multiplier: 1, constant: 0))
分别进行热重新加载和完全重新加载。
答案 1 :(得分:3)
答案 2 :(得分:2)
您可以运行 flutter clean
命令
答案 3 :(得分:1)
我尝试了flutter clean
,但这对我没有用。然后我去擦除模拟器的数据,瞧,缓存的问题消失了。如果您拥有Android Studio,则可以按照以下Create and Manage virtual machine启动AVD Manager。否则,您可以使用android SDK中包含的emulator.exe命令行擦除模拟器的数据。只需在Start the emulator from the command line上按照此说明进行操作即可。
答案 4 :(得分:1)
在dart-tools文件夹,android文件夹和iOS文件夹中自动生成一个临时文件时,会在应用程序运行时生成构建缓存。 Clear命令将删除flutter项目中的构建工具和dart目录,因此当我们重新编译该项目时,它将从头开始。当我们的项目显示调试错误或运行相关错误时,通常使用此命令。在此答案中,我们将清除Flutter Android iOS App中的Build Cache,然后再次重建Project结构。
在命令提示符或终端中打开flutter项目文件夹。然后输入flutter clean
命令并按Enter。
执行flutter clean命令后,我们将看到它将使用调试文件删除应用程序中的dart-tools
文件夹,android
文件夹和iOS
文件夹。这可能需要一些时间,具体取决于系统清理项目的速度。
有关更多信息,请参见https://flutter-examples.com/clear-build-cache-in-flutter-app/
答案 5 :(得分:0)
或者,如果您无法运行flutter命令,则可以手动删除/ app-project文件夹下的/ build文件夹。
答案 6 :(得分:0)
我找到了一种在调试代码之前自动运行clean的方法。 (警告,此操作在您每次按下按钮时都会运行,即使是热重启也是如此)
首先,找到“运行”>“编辑配置”菜单
在“启动前:外部工具”下,点击“外部”工具“ +”图标, 激活工具窗口。
答案 7 :(得分:0)
基本上,有 3种替代方法可以清除您可以尝试的所有内容:
flutter clean
将删除/build
文件夹。/build
文件夹,该文件夹与flutter clean
基本上相同。答案 8 :(得分:0)
与我的问题相同。
Flutter的新手。我正在使用VS内置终端执行flutter run
,以便在iPhone中运行该应用程序。它给我错误Error when reading 'lib/student_model.dart': No such file...
,这是我代码中的旧代码版本。我已将其更改为lib/model/student_model.dart
。
然后搜索包含该行的'lib / student_model.dart'in the project, it appears file
kernel_snapshot.d`行。因此,它使用旧的代码版本来构建项目。
对我来说,Flutter clean
无法正常工作。重新启动VS来解决问题,不确定是Flutter还是VS导致问题?
我想知道是否有一些命令无需运行就可以构建flutter项目?
答案 9 :(得分:0)
我遇到了同样的问题,我发现我在 Visual Studio 代码中有两个终端,在第一个终端上它已经运行了我的 flutter 项目,而在另一个终端上我正在运行该线程中共享的不同解决方案。由于这个原因,没有解决方案对我有用。所以有两种方法可以解决这个问题。 1-重新启动visual studio代码(它会自动关闭终端) 2- 停止已经运行 flutter 项目的终端,然后运行 flutter clean 命令。
答案 10 :(得分:-2)
在 IDE 中打开终端输入 flutter clean 并按 Enter 然后热重新加载项目