如何从命令行添加包?

Posted

技术标签:

【中文标题】如何从命令行添加包?【英文标题】:How to add a package from command line? 【发布时间】:2019-12-04 09:40:42 【问题描述】:

npm(和yarn)有一个很棒的功能,您可以通过知道包名称(如yarn add xxx_yyy)添加所需的包,并将最新的稳定版本添加到您的项目中。颤振有没有等价的英雄?或者我们在pub.dev 上搜索我们需要的包并找到要添加到我们的pubspec.yaml 的版本?

【问题讨论】:

No Flutter 不支持 npm 或 yarn 命令 Flutter 只允许通过添加到 pubspec.yaml 来添加包 @axelblaze,我自己已经知道它不支持npmyarn,我问的是同样的THING 我认为目前还没有这样的工具,但我认为可以创建一个。 @10101010 同意。但老实说,我对目前的情况没有任何问题。 【参考方案1】:

将包添加为直接依赖项:

flutter pub add <package-name>

将包添加为 dev-dependency:

flutter pub add -d <package-name>

删除一个包:

flutter pub remove <package-name>

注意:您也可以使用 dart 命令代替上面的 flutter

【讨论】:

如何从命令行将packege添加到dev_dependencies? @e79ene 使用d 例如:dart|flutter pub add -d xxx【参考方案2】:

更新 2

基于@CopsOnRoad answer,现在dart 有add 命令,这是从cmd 添加包的最佳方式。 Full documentation is here.

更新

现在你可以在 get_cli 包的帮助下获得类似 npm 或 yarn in flutter 的体验。它提供的工具之一是让您只需编写包名称,它会自动安装最新版本,并在 yaml 文件中提及版本号。

来自其文档

// To install a package in your project (dependencies):
get install camera

// To install several packages from your project:
get install http path camera 

// To install a package with specific version:
get install path:1.6.4

// You can also specify several packages with version numbers

// To install a dev package in your project (dependencies_dev): 
get install flutter_launcher_icons --dev

旧答案

关于 cli 动词 add,flutter 和 pub 中还没有任何等价物。但是关于版本控制和仅使用名称添加软件包,请尝试将它们添加到 pubspec.yaml 文件中,而不使用版本号。就像这样:

dependencies:
  http: ^0.12.0+2
  mobx:
  flutter_mobx:
  dio: ^2.1.13

【讨论】:

谢谢!我希望颤振会添加版本(在第一次获取包之后),所以它不会再次获取它(以获得更新的版本)。 @AlirezaXX pubspec.lock 文件就可以了。由于dart documentation,您必须将其添加到源代码管理中(仅适用于非共享应用程序)【参考方案3】:

您可以使用flutter pub 命令管理包。

flutter pub add - 将包添加到项目的pubspec.yaml 并下载它们。所以你不必运行flutter pub get

flutter pub add <package>

将包添加到项目的依赖项中。

flutter pub add --dev <package>

同样将包添加到dev_dependencies

flutter pub remove <package>

从项目的依赖项中删除包。

文档:https://dart.dev/tools/pub/cmd

注意:(flutter pubdart pub 相同)

【讨论】:

如何使用flutter pub add添加多个包?

以上是关于如何从命令行添加包?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用多个包从命令行运行 Selenium testNG 文件?

从命令行上传时如何覆盖pypi包?

如何从命令行列出 Github 包注册表存储库中的所有包?

从命令行构建Android - 包似乎已损坏

如何使用作曲家从命令行添加非公共存储库?

如何通过 LLDB 命令行添加断点操作?