Flutter Web HelloWorld示例执行webdev serve命令报错求助
解决webdev提示"pubspec.yaml已变更需重新运行pub get"的问题
嘿,我之前也折腾过这个早期的flutter_web仓库,你遇到的问题其实是**flutter pub get和原生Dart的pub get在这个旧项目里不兼容**。
这个独立的flutter_web示例是基于纯Dart Web生态构建的,依赖管理认的是原生Dart的pub工具,而不是Flutter CLI自带的那个pub命令。你之前跑的flutter pub get虽然看起来成功了,但并没有生成webdev能识别的pubspec.lock文件。
试试这几步:
- 先确认你在
hello_world项目的根目录(就是有pubspec.yaml的那个文件夹) - 直接运行原生Dart的
pub get:
如果你的系统里的pub命令找不到,就用Flutter缓存里的Dart SDK来执行:pub get/home/meth/Documents/development/flutter/bin/cache/dart-sdk/bin/pub get - 等命令跑完,再执行
webdev serve,应该就能正常在8080端口启动服务了。
补充说明
从你贴的flutter pub get -v输出能看到,它用的是Flutter缓存里的pub,但因为这个项目是旧版flutter_web的结构,Flutter的pub命令处理依赖的方式和原生pub有差异,导致生成的pubspec.lock不被webdev认可。直接用原生pub执行后,lock文件会被正确更新,webdev就不会再报错了。
内容的提问来源于stack exchange,提问作者Meth Munindradasa
相关产品推荐
相关产品推荐

