flutter 如何使用我的 dart 包私人和不显示在酒吧 dart 郎?

fxnxkyjh  于 2023-03-31  发布在  Flutter
关注(0)|答案(5)|浏览(128)

我有一些dart软件包,但由于公司协议的原因,我不想发布到pub。如何将我的dart软件包仅用于我的公司,而不显示在pub dart lang上?
我已经查过这个链接https://github.com/dart-lang/pub/issues/1050,但仍然需要更多的信息。

k2fxgqgv

k2fxgqgv1#

Günter Zöchbauer的答案是正确的,但他没有提供例子。
因此,使用pub/package/lib而不在www.example.com上发布pub.dev:

1.本地-保存到本地某个文件夹

dependencies:
  library_name:
   path: /path/to/library_name

2.托管-Github、Gitlab等推送

dependencies:
  library_name:
   git: https://github.com/username/library_name

或针对特定分支

dependencies:
  library_name:
   git:
    url: https://github.com/username/library_name.git
    ref: dev    #branch name

或针对特定提交

dependencies:
  library_name:
   git:
    url: https://github.com/username/library_name.git
    ref: e234072340    #commit reference id

其中'library_name'必须与该pub的pubspec.yaml中声明的'name'相同。

h5qlskok

h5qlskok2#

如果你发布一个包到https://pub.dartlang.org,它会显示出来,这是没有办法的。
其他选择。
你可以用

  • 例如,对存储在本地或网络驱动器上的包的路径依赖性。
  • Git依赖于存储在Git存储库中的包
  • 在本地或网络驱动器上
  • 托管在GitHub、GitLab或任何其他Git服务器上
  • 运行您自己的私人Pub服务器。

参见

bvn4nwqk

bvn4nwqk3#

本地:
为了解决这个问题,pub支持路径依赖。

dependencies:
  transmogrify:
    path: /Users/me/transmogrify

这表示transmogrify的根目录是/Users/me/transmogrify。
参见:https://www.dartlang.org/tools/pub/dependencies

nfs0ujit

nfs0ujit4#

您也可以让其他人运行pub服务器(作为服务):https://cloudsmith.io/l/dart-repository/
虽然它对于私有仓库是商业的(付费的),但对于公共和开源仓库是免费的。如果你正在寻找一个无服务器的托管解决方案,它是唯一的选择(截至本文撰写时)。

4c8rllxm

4c8rllxm5#

请查看https://onepub.dev
它是一个专门为dart编写的私有包存储库。
您可以通过几个命令发布到OnePub

dart pub global activate onepub
onepub login
cd myproject
onepub pub private
dart pub publish

添加OnePub上承载的依赖项

cd aproject
onepub pub add myproject
dart pub get

有一个免费的小团队版本。

相关问题