Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>flutter dependency managerNew to Visual Studio Code? Get it now.
flutter dependency manager

flutter dependency manager

俞亿

|
8,008 installs
| (1) | Free
On click to download the dependent libary to local path, and able to switch between the local path mode and the git url mode of the dependent libary.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Features

  1. Display all the dependencies in the flutter pubspec.yaml file, and divided all the dependencies to 3 groups (Github, Git Url,LocalPath).
  2. The dependencies in the "Git Url" section can be git clone to the localpath using one click, so you can edit this dependency.
  3. The dependencies in the "Local Path" section can be reset to "Git Url" section with the lastest tag, so you can publish your edits in this dependency with your main project.

1. 为什么要开发这个vscode插件?

在flutter项目中,我们现在开发了一些自己的组件库,依赖库上传到公司的git,通过如下方式引用。

从主工程联调这个库时,可以联调(从主工程直接跳转到plugin中)可以直接修改,修改后再次hot resart可以生效。

但是过一会代码就丢了,原因就是上面的引用方式并没有指定本地路径,所以flutter统一把这些依赖库下载到一个本地缓存路径了。

这个本地缓存目录里面,是没有用git管理的,这里只是一个临时缓存,所以只要从在flutter项目中使用flutter packages get,这些就会被直接覆盖。

所以要让本地plugin的修改不丢失,就需要git clone到本地并指定路径,这样修改就不会丢失。

开发这个vscode插件的主要目的就是实现自动git clone到本地,不让plugin代码修改丢失。

2. 现有的plugin管理方案

其实上面开发plugin丢代码的问题,我们已经通过ci.sh脚本解决了,为什么还要开发这个插件呢?

现有的方案是把插件统一放到vendor目录下面,在pubspec.yaml文件中使用path进行引用。

并且使用shell脚本进行更新。

但是这带来一个非常严重的问题。

pubspec.yaml文件是进行统一依赖库管理的文件,上线前需要对所有的依赖库版本进行检查,向上图这样的方式根本不能确定即将上线的依赖库的版本。

依赖库的版本不是由pubspec.yaml决定的,而是这个路径下面的子目录决定的,所以上线前必须执行ci.sh脚本。

如果这个依赖库要指定版本,就必须到ci.sh修改checkout到指定tag的脚本,如果没有修改就会直接导致错误版本的依赖库上线。

所以如果依赖库有多个的话,需要仔细review ci脚本,上线工作量比较大而且不靠谱。

3.flutter-dependency-manager展示

这个插件就是对pubspec.yaml文件进行管理的,把右边的文件映射成左边的树状结构视图。

有三种item:

1.使用版本号指定的github模式,通常都是比较著名的第三方库,不需要修改。

2.使用git url指定的模式,通常是公司内部开发的组件库或者业务模块化库,需要定期修改。

3.使用本地路径指定的模式,是组件开发中的模式,可以进行联调和修改。

插件提供两个操作,1.把git url模式下载到本地路径,进行修改和联调。2.开发完成后上传到git并打tag,把local path模式改成git url模式。

注意只有蓝色文字对应的操作是这个插件提供的,其他的操作需要自己使用git命令和工具完成。

git clone后会自动建立workspace,可以很方便的进行插件代码的浏览和修改,界面如下。

插件自动生成的目录结构如下,所有的插件代码不在主工程中,主工程只是使用path或者git url进行引用。 上线之前,可以通过插件检查所有的依赖库,必须确保所有依赖库都是使用git url和tag方式进行引用的,这样可以确保上线的是指定的版本。

因为打包机上面并没有装这个插件也没有plugin目录,所以如果还有依赖库是通过path方式引用的,会直接打包失败,这是可以形成一个强制版本检查。

目前已经上架vscode插件市场,感兴趣的同学可以下载用一下。

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft