Flutter 和 pubspec 文件
每个 Flutter 项目都包含一个 pubspec.yaml
文件,通常称为 pubspec。当您创建新的 Flutter 项目时,会生成一个基本的 pubspec。它位于项目树的顶部,包含 Dart 和 Flutter 工具需要了解的有关项目的信息。pubspec 使用 YAML 编写,它对人类来说可读性强,但请注意 空格(制表符与空格)很重要。
pubspec 文件指定项目所需的依赖项,例如特定的包(及其版本)、字体或图像文件。它还指定其他要求,例如对开发者包(如测试或模拟包)的依赖,或对 Flutter SDK 版本的特定约束。
Dart 和 Flutter 项目共有的字段在 pubspec 文件(位于 dart.dev 上)中进行了描述。此页面列出了仅对 Flutter 项目有效的 Flutter 特定字段。
当您使用 flutter create
命令(或使用 IDE 中的等效按钮)创建新项目时,它会为基本 Flutter 应用创建一个 pubspec。
这是一个 Flutter 项目 pubspec 文件的示例。Flutter 唯一的字段已突出显示。
name: <project name>
description: A new Flutter project.
publish_to: none
version: 1.0.0+1
environment:
sdk: ^3.5.0
dependencies:
flutter: # Required for every Flutter project
sdk: flutter # Required for every Flutter project
flutter_localizations: # Required to enable localization
sdk: flutter # Required to enable localization
cupertino_icons: ^1.0.8 # Only required if you use Cupertino (iOS style) icons
dev_dependencies:
flutter_test:
sdk: flutter # Required for a Flutter project that includes tests
flutter_lints: ^5.0.0 # Contains a set of recommended lints for Flutter code
flutter:
uses-material-design: true # Required if you use the Material icon font
generate: true # Enables generation of localized strings from arb files
assets: # Lists assets, such as image files
- images/a_dot_burr.jpeg
- images/a_dot_ham.jpeg
fonts: # Required if your app uses custom fonts
- family: Schyler
fonts:
- asset: fonts/Schyler-Regular.ttf
- asset: fonts/Schyler-Italic.ttf
style: italic
- family: Trajan Pro
fonts:
- asset: fonts/TrajanPro.ttf
- asset: fonts/TrajanPro_Bold.ttf
weight: 700
资产
#常见类型的资源包括静态数据(例如,JSON 文件)、配置文件、图标和图像(JPEG、WebP、GIF、动画 WebP/GIF、PNG、BMP 和 WBMP)。
除了列出包含在应用包中的图像外,图像资源还可以引用一个或多个分辨率特定的“变体”。有关更多信息,请参阅 分辨率感知 部分的 资源和图像 页面。有关从包依赖项添加资源的信息,请参阅同一页面中的 包依赖项中的资源图像 部分。
字体
#如上例所示,fonts 部分中的每个条目都应该有一个带有字体系列名称的 family
键,以及一个带有指定字体资源和其他描述符的列表的 fonts
键。
有关使用字体的示例,请参阅 使用自定义字体 和 从包导出字体 教程,这些教程位于 Flutter cookbook 中。
更多信息
#有关包、插件和 pubspec 文件的更多信息,请参阅以下内容
除非另有说明,否则本网站上的文档反映了 Flutter 的最新稳定版本。页面上次更新于 2024-10-01。 查看源代码 或 报告问题.