dart pub add
add 是 pub 工具 的一个命令。
$ dart pub add [{dev|override}:]<package>[:descriptor] [[{dev|override}:]<package>[:descriptor] ...] [options]
此命令将指定的包作为依赖项添加到 pubspec.yaml
中,然后检索依赖项以解析 pubspec.yaml
。
以下示例命令等效于 编辑 pubspec.yaml
以添加 http
包, 然后调用 dart pub get
:
$ dart pub add http
版本约束
#默认情况下, dart pub add
使用 pub.dev 网站 上与您的 SDK 约束和依赖项兼容的最新稳定版本包。例如,如果 0.13.3
是 http
包的最新稳定版本,则 dart pub add http
会在您的 pubspec.yaml
的 dependencies
下添加 http: ^0.13.3
。
您也可以指定约束或约束范围:
$ dart pub add foo:2.0.0
$ dart pub add foo:'^2.0.0'
$ dart pub add foo:'>=2.0.0 <3.0.1'
如果指定的包是您 pubspec.yaml
中的现有依赖项,则 dart pub add
会将依赖项的约束更新为命令中指定的约束。
开发依赖
#dev:
前缀将包添加为 开发依赖项 ,而不是常规依赖项。
$ dart pub add dev:foo # 添加最新兼容的 foo 稳定版本
$ dart pub add dev:foo:^2.0.0 # 添加指定的 foo 约束
$ dart pub add foo dev:bar # 同时添加常规依赖项 foo 和开发依赖项 bar
以前是 -d, --dev
选项:
$ dart pub add --dev foo
依赖项覆盖
#要指定 依赖项覆盖 ,请添加 override:
前缀并包含 版本约束 或 源描述符 。
例如: 要覆盖所有对 package:foo
的引用以使用该包的 1.0.0 版本,请运行以下命令:
$ dart pub add override:foo:1.0.0
这会将覆盖添加到您的 pubspec.yaml
文件中:
dependency_overrides:
foo: 1.0.0
源描述符
#YAML 描述符语法允许您从不同的来源添加多个包,并对每个包应用不同的选项和约束。
$ dart pub add [options] [{dev|override}:]<package>[:descriptor] [[{dev|override}:]<package>[:descriptor] ...]
语法反映了如何在 pubspec.yaml
中编写依赖项。
'<package>:{"<source>":"<descriptor>"[,"<source>":"<descriptor>"],"version":"<constraint>"}'
git
#添加 git 依赖项 。
$ dart pub add 'foo:{"git":"https://github.com/foo/foo"}'
您可以在该存储库中指定存储库、分支或提交,或确切位置:
$ dart pub add 'foo:{"git":{"url":"../foo.git","ref":"branch","path":"subdir"}}'
url
#依赖于指定 Git 存储库中的包。
以前是 --git-url=<git_repo_url>
选项:
$ dart pub add http --git-url=https://github.com/my/http.git
ref
#结合 url
使用,依赖于 Git 仓库的指定分支或提交。
以前是 --git-ref=<branch_or_commit>
选项:
$ dart pub add http --git-url=https://github.com/my/http.git --git-ref=tmpfixes
path
#结合 url
使用,指定 Git 仓库中包的位置。
以前是 --git-path=<directory_path>
选项。
hosted
#添加 托管依赖项 ,该依赖项取决于指定 URL 上的包服务器。
$ dart pub add 'foo:{"hosted":"my-pub.dev"}'
以前是 --hosted-url=<package_server_url>
选项。
path
#添加对本地存储的包的 路径依赖项 。
$ dart pub add 'foo:{"path":"../foo"}'
以前是 --path=<directory_path>
选项。
sdk
#从指定的 SDK 源添加包。
$ dart pub add 'foo:{"sdk":"flutter"}'
以前是 --sdk=<sdk_name>
选项:
$ dart pub add foo --sdk=flutter
选项
#对于适用于所有 pub 命令的选项,请参阅 全局选项 。
--[no-]offline
#默认情况下,pub 会连接网络以检索托管的包(--no-offline
)。要改为使用缓存的包,请使用 --offline
。详情请参见离线获取。
-n, --dry-run
#报告哪些依赖项会更改,但不进行任何更改。
--[no-]precompile
#默认情况下,pub 会预编译直接依赖项中的可执行文件 (--precompile
)。要防止预编译,请使用 --no-precompile
。
在工作区中
#在 Pub 工作区 中, dart pub add
仅会将依赖项添加到当前目录中的包。
除非另有说明,否则本网站上的文档反映的是 Dart 3.6.0。页面最后更新于 2025-02-05。 查看源代码 或 报告问题.