Flutter: 找不到目标文件“lib/main.dart”

59
当我执行 flutter run 命令时,出现了错误。
目标文件 "lib/main.dart" 没有找到。
这是为什么,我该如何解决?

你在哪个目录下执行了该命令?请将 flutter doctor 命令的输出添加到你的问题中。 - Günter Zöchbauer
18个回答

1

我曾经遇到过类似的错误信息,原因是我不小心删除了 void main()。


类似于 https://dev59.com/blUL5IYBdhLWcg3wUmpR#58618151 - Eric Aya

0
如果您正在使用 VSCode,请尝试以下方法:
删除 项目目录中的 .vscode 文件夹并重新运行程序。

0

如果你在vs code中使用Debug Mode,请确保vs code的工作文件夹是你的Flutter项目主文件夹。

如果你想改变vs code的工作文件夹,可以使用File > Open Folder菜单或者Ctrl+O快捷键。

当我改变了文件夹时,它对我起作用了


0

尝试使用final FlutterDevice flutterDevice = await FlutterDevice.create

问题的根本原因是我们使用的ResidentRunner在附加和热重新加载时会尝试查找main.dart文件,如果没有指定目标。附加不提供目标,因此它始终使用默认行为。如DaceShuckerow所述。

这个问题在官方Repo上仍然存在。


0

如果有人遇到这个问题,对我有效的方法是重新创建ios文件夹。而且-t选项不受目标位置或名称的影响,也不需要在lib文件夹中拥有main.dart。

重新创建ios文件夹:

  • 将ios文件夹重命名为ios_old
  • 运行 => flutter create fakeApp
  • 打开fakeApp,将ios文件夹复制到您的项目中
  • 从ios_old迁移更改(如果您有任何更改)
  • 删除ios_old

0

我认为你已经更改了 main.dart 的路径。如果是这样,你可以将 main.dart 文件拖放到 lib 文件夹中。(lib/main.dart)


0

VSCode 用户:请导航至 launch.json 文件并将 "Program" 行替换为以下内容:

"Program":"${rootProject.buildDir}/${project.name}/lib/main.dart"

0

我的情况是,我忘记写调用主函数的代码了...

void main()
{
  runApp......
}

这样做起来很有效


1
我帮助你格式化了帖子。请自行检查可疑的 "Void" vs "void",因为我不太确定这种技术中实际语法是什么。[编辑]以防你同意我的直觉。 - Yunnosch

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接