flutter组件 私有化使用的方案探究

2020-08-19  本文已影响0人  only_run

方案1 搭建pub私有服务,依赖库发布到pub私服上

搭建pub私服

使用 https://github.com/dart-archive/pub_server dart官方的开源项目

参考:https://blog.csdn.net/ameryzhu/article/details/101688994

发布插件到pub私服

flutter pub publish --dry-run
image.png
 flutter packages pub publish --server=http://127.0.0.1:8081
image.png

虽然是 pub私服,依然要求 登录验证google账号,才能够继续发布,坑。
这是因为 发布项目到 pub仓库的命令是 "flutter pub publish" 是dart sdk提供的 工具,而且项目插件的验证 ,身份的识别也写到了pub publish命令当中;

解决思路(不考虑技术实现)要么根据提示 进行googel的oauth2授权;要么 修改“pub publish”命令的 验证部分的代码

参考:https://blog.csdn.net/ameryzhu/article/details/101688994
https://www.jianshu.com/p/9ee523958b23

这两篇技术文章,下载https://github.com/dart-lang/pub
编译pub的dart代码 生成的 mypub.dart.snapshot文件 ,并修改pub文件的路径指向为

# Run the pub snapshot.
DART="$BIN_DIR/dart"
if array_contains "--no-preview-dart-2" "${VM_OPTIONS[@]}"; then
  echo "Pub no longer supports Dart 1"
  exit -1
else
  SNAPSHOT="$BIN_DIR/snapshots/mypub.dart.snapshot"
  exec "$DART" "${VM_OPTIONS[@]}" "$SNAPSHOT" "$@"
fi

在执行 flutter pub publish 的时候报错了

image.png
无效的内核二进制文件,初步猜测本机flutter的dart版本和从https://github.com/dart-lang/pub 下载的pub代码使用的dart版本不一致
暂时记录..

方案2: 依赖库 存放到 私有git仓库

插件名称:
 path: ‘插件路径’

git仓库插件

 插件名称:
    git:
      url: git://github.com/jlouage/xx.git
      ref: master
上一篇 下一篇

猜你喜欢

热点阅读