Pub Package Manager是否提供一种在全球范围内安装软件包的方法?
我已经有一段使Node.js开发人员,我想知道如果有一个pub
相当于npm install -g <package_name>
如果有一种全局安装软件包的方法,那么有一种方法可以注册二进制脚本,这些脚本可以像shell命令一样被安装来调用。
依存关系
所有pub软件包都是全局安装的(~/.pub-cache/
对于AppData\Roaming\Pub\Cache
Windows中的Mac / Linux ,对于每个软件包版本,下面都是唯一的子目录),然后仅链接到在中添加依赖项的项目pubspec.yaml
。
实际上~/pub-cache
,仅对于用户而言是全局的,而不对于整个系统而言是全局的。我不太了解npm,但我认为npm install -g
将它全局安装到系统中。Dart中没有类似的东西,但是无论如何您都不会在Dart中安装软件包。当您在不同的软件包中使用相同版本的Pub软件包时,它仅在驱动器上保存一次。
全局包可执行文件
可以使用全局(每个用户)激活包含可执行脚本的软件包pub global activate ...
。如果添加~/.pub-cache/bin/
目录到您的路径,你可以运行这些可执行脚本达特只是他们的名字(如tuneup
为tuneup
包)或pub global run packagename:scriptName
(像pub global run tuneup:tuneup
)如果脚本和包的名称是可以省略相同的:scriptName
部分。
本地包可执行文件
您还可以使用当前项目的依赖项来运行脚本pub run packageName:scriptName
(例如pub run test
用于运行单元测试)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句