原pubspec。通过"flutter create {project_name}"生成Yaml文件可以正常工作。但是假设我想尝试添加一个依赖项,比如fluttertoast,它会给出错误信息
description: A new Flutter project.
publish_to: 'none' # Remove this line if you wish to publish to pub.dev
version: 1.0.0+1
environment:
sdk: '>=2.18.0-170.0.dev <3.0.0'
flutter:
sdk: flutter
cupertino_icons: ^1.0.2
fluttertoast: ^8.0.9
dev_dependencies:
flutter_test:
sdk: flutter
flutter_lints: ^2.0.0
flutter:
uses-material-design: true
这给出了错误:
Error on line 10, column 5 of pubspec.yaml: A version constraint must be a string.
╷
10 │ ┌ sdk: flutter
11 │ │
12 │ │ cupertino_icons: ^1.0.2
13 │ │ fluttertoast: ^8.0.9
14 │ │
15 │ │ dev_dependencies:
16 │ │ flutter_test:
17 │ │ sdk: flutter
18 │ │ flutter_lints: ^2.0.0
19 │ │ flutter:
20 │ │
21 │ └ uses-material-design: true
╵
Running "flutter pub get" in textfield...
pub get failed (65; ╵)
知道即使我删除了fluttertoast依赖
仍然会导致错误
Error on line 10, column 5 of pubspec.yaml: A version constraint must be a string.
╷
10 │ ┌ sdk: flutter
11 │ │
12 │ │ cupertino_icons: ^1.0.2
13 │ │ # fluttertoast: ^8.0.9
14 │ │
15 │ │ dev_dependencies:
16 │ │ flutter_test:
17 │ │ sdk: flutter
18 │ │ flutter_lints: ^2.0.0
19 │ │ flutter:
20 │ │
21 │ └ uses-material-design: true
╵
Running "flutter pub get" in textfield...
pub get failed (65; ╵)
flutter——版本输出——>
Flutter 3.1.0-0.0.pre.1112 • channel master • https://github.com/flutter/flutter.git
Framework • revision 8294d9e91e (24 hours ago) • 2022-06-05 13:38:04 -0400
Engine • revision 9e4f372577
Tools • Dart 2.18.0 (build 2.18.0-170.0.dev) • DevTools 2.14.0
我想你在sdk:
之前漏掉了dependencies:
。
像这样设置:
environment:
sdk: '>=2.15.0 <3.0.0'
dependencies:
flutter:
sdk: flutter
cupertino_icons: ^1.0.4
关于它的更多细节,请参考这个示例。
Yaml是缩进敏感的。添加包的最简单方法是在终端中运行' flutter pub add fluttertoast'。要修复所面临的错误,请将flutter toast缩进与pubspec.yaml
中的flutter缩进相同dependencies:
flutter:
sdk: flutter
cupertino_icons: any
flutter toast : ^8.0.9