Package dependencies For Flutter

栏目: 编程工具 · 发布时间: 7年前

内容简介:依赖是一个pub包管理的核心概念,它在pubspec.yaml文件中被指定。开发人员只需要把自己直接依赖的包列出来,不需要写间接依赖的包,pub会帮我们处理那些间接依赖,可以使用pub deps命令或者flutter packages pub deps命令查看包依赖信息。例子:>=1.2.3、>1.2.3、<=1.2.3、<1.2.3、'>=1.2.3 <2.0.0'例子:^1.3.0

概念

依赖是一个pub包管理的核心概念,它在pubspec.yaml文件中被指定。开发人员只需要把自己直接依赖的包列出来,不需要写间接依赖的包,pub会帮我们处理那些间接依赖,可以使用pub deps命令或者flutter packages pub deps命令查看包依赖信息。

用法

dependencies:
    [依赖的包名]:
        [source]: 告诉pub这个包如何被定位,不是一个具体的pub siet或者是git url, 
        而是获取包的方式,这些方式有sdk、Hosted packages、Git packages、Path packages
        [description]: 让pub定位到source的额外信息
        version: 包的版本号

不同source的写法

SDK(表明这个包来自于哪个sdk,使用这个参数要求dart版本必须在1.19.0之上)

dependencies:
  flutter_driver:
    sdk: flutter
    version: ^0.0.1

Hosted packages(从pub site上下载的包)

dependencies:
  transmogrify:
    hosted:
      name: transmogrify
      url: http://your-package-server.com
    version: ^1.4.0

Git packages(从git上获取的包)

dependencies:
  kittens:
    git:
      url: git://github.com/munificent/kittens.git
      ref: some-branch

Path packages(依赖的本地文件)

dependencies:
  transmogrify:
    path: /Users/me/transmogrify

不同的版本号约束写法

semantic versioning

例子:>=1.2.3、>1.2.3、<=1.2.3、<1.2.3、'>=1.2.3 <2.0.0'

Caret syntax(要求dart版本号在1.8.3及以上,并且dart会把^转换成semantic versioning的形式)

例子:^1.3.0

依赖类型

dependencies

项目中要依赖的包,例子如下:

dependencies:
  path: ^1.3.0
  collection: ^1.1.0
  string_scanner: ^0.1.2

dev_dependencies

放一些跟项目逻辑无关的依赖包,比如和test相关的, 例子如下:

dev_dependencies:
  test: '>=0.5.0 <0.12.0'

dependency_overrides

覆盖dependencies包依赖,例子如下:

dependency_overrides:
  transmogrify:
    path: ../transmogrify_patch/

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。

你不知道的JavaScript(上卷)

你不知道的JavaScript(上卷)

[美] Kyle Simpson / 赵望野、梁杰 / 人民邮电出版社 / 2015-4 / 49.00元

JavaScript语言有很多复杂的概念,但却用简单的方式体现出来(比如回调函数),因此,JavaScript开发者无需理解语言内部的原理,就能编写出功能全面的程序;就像收音机一样,你无需理解里面的管子和线圈都是做什么用的,只要会操作收音机上的按键,就可以收听你喜欢的节目。然而,JavaScript的这些复杂精妙的概念才是语言的精髓,即使是经验丰富的JavaScript开发者,如果没有认真学习也无......一起来看看 《你不知道的JavaScript(上卷)》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具