You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter macOS项目调试时因@NSApplicationMain废弃无法构建求助

Flutter macOS项目构建失败:@NSApplicationMain废弃更新后报错

问题详情

在macOS上以debug模式启动lib/main.dart时,系统提示macos/Runner/AppDelegate.swift中的@NSApplicationMain属性已废弃并自动完成更新,但更新后项目彻底无法构建。

错误截图

错误截图

当前Flutter版本

Flutter版本截图

解决步骤

  • 恢复AppDelegate.swift原始结构
    自动更新大概率破坏了文件的标准结构,直接替换为Flutter默认模板代码:
import Cocoa
import FlutterMacOS

@NSApplicationMain
class AppDelegate: FlutterAppDelegate {
  override func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool {
    return true
  }
}
  • 清理并重建依赖
    依次执行以下命令:
flutter clean
flutter pub get
cd macos && pod install
  • 手动适配废弃注解(可选)
    如果恢复后仍收到废弃警告,按官方规范修改:
  1. 删除AppDelegate.swift中的@NSApplicationMain
  2. 在macos/Runner目录新建main.swift,写入:
import Cocoa

let appDelegateClassName = NSStringFromClass(AppDelegate.self)
NSApplicationMain(CommandLine.argc, CommandLine.unsafeArgv, nil, appDelegateClassName)
  • 检查环境兼容性
    运行flutter doctor排查所有环境依赖问题,修复提示的缺失组件或配置错误。

内容的提问来源于stack exchange,提问作者usoysal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 01:15:57