Flutter pubspec.yaml 配置详解

方木先生
    分享互动规则

    pubspec.yaml 完整结构速览

    一个完整的 pubspec.yaml 由以下几个区块构成:

    pubspec.yaml
    ├── 必填
    │   ├── name            包名(小写+下划线)
    │   ├── description     包描述
    │   ├── version         语义化版本 x.y.z+build
    │   └── environment     SDK 版本约束
    ├── 常用
    │   ├── dependencies        运行时依赖
    │   ├── dev_dependencies    开发/测试依赖
    │   └── flutter             资源、字体、插件配置
    └── 可选
        ├── publish_to          发布控制(私有 app 加 'none')
        ├── dependency_overrides 版本冲突强制覆盖
        ├── platforms           支持平台声明
        └── homepage / repository / topics / screenshots / funding
    

    最常见的完整示例

    name: my_app
    description: "A sample Flutter application."
    version: 1.2.3+5
    publish_to: 'none'
    
    environment:
      sdk: '>=3.0.0 <4.0.0'
    
    dependencies:
      flutter:
        sdk: flutter
      http: ^1.1.0
      provider: ^6.1.0
      go_router: ^12.0.0
    
    dev_dependencies:
      flutter_test:
        sdk: flutter
      flutter_lints: ^3.0.0
      build_runner: ^2.4.0
    
    flutter:
      uses-material-design: true
      assets:
        - assets/images/
        - assets/data/
      fonts:
        - family: MyFont
          fonts:
            - asset: fonts/MyFont-Regular.ttf
            - asset: fonts/MyFont-Bold.ttf
              weight: 700
    

    常见问题速查

    场景解决方案
    两个包版本冲突dependency_overrides 强制锁定
    私有 app 防误发布publish_to: 'none'
    本地调试某个包path: ../my_pkg
    使用未发布的 GitHub 分支git: url: ... ref: branch-name
    添加图片资源flutter.assets 列出目录或文件
    注册自定义字体flutter.fonts 配置 family + asset
    评论 0

    支持 @用户名 提醒对方(需为站内已注册用户名);回复仅支持一层楼中楼。

    登录后发表评论、回复与 @ 提及。

    举报

    举报会匿名发送给管理员审核。

    • 暂无评论,来发表第一条。

    码谱 · The Digital Atelier · 技术内容社区