如何使用我的dart包私有且不在pub dart lang上显示?

dop*_*eee 2 dart dart-pub flutter

由于我的公司协议,我有不想发布到dart包的信息。如何仅将我的dart包用于我的公司而不在pub dart lang上显示?

我已经查看了此链接https://github.com/dart-lang/pub/issues/1050,但仍需要更多有关此信息。

Rah*_*nge 51

G\xc3\xbcnter Z\xc3\xb6chbauer 答案是正确的,但他没有提供示例。

\n

因此,要使用 pub/package/lib 而不在 pub.dev 上发布:

\n

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

\n
dependencies:\n  library_name:\n   path: /path/to/library_name\n
Run Code Online (Sandbox Code Playgroud)\n
\n

2. 托管 - 在 Github、Gitlab 等上推送。

\n
dependencies:\n  library_name:\n   git: https://github.com/username/library_name\n
Run Code Online (Sandbox Code Playgroud)\n

或者针对特定分支

\n
dependencies:\n  library_name:\n   git:\n    url: https://github.com/username/library_name.git\n    ref: dev    #branch name\n
Run Code Online (Sandbox Code Playgroud)\n

或者针对特定提交

\n
dependencies:\n  library_name:\n   git:\n    url: https://github.com/username/library_name.git\n    ref: e234072340    #commit reference id\n
Run Code Online (Sandbox Code Playgroud)\n

其中“ library_name ”必须与该酒吧的 pubspec.yaml 中声明的“ name ”相同。

\n


Gün*_*uer 6

如果您将软件包发布到https://pub.dartlang.org,它将显示出来。没有办法解决。

备择方案。

您可以使用

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

也可以看看


小智 5

当地的 :

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

dependencies:
  transmogrify:
    path: /Users/me/transmogrify
Run Code Online (Sandbox Code Playgroud)

这表示 transmogrify 的根目录是 /Users/me/transmogrify。

见:https : //www.dartlang.org/tools/pub/dependencies


Bre*_*ton 5

看看https://onepub.dev

它是专门为 dart 编写的私有包存储库。

您可以通过几个命令发布到 OnePub

dart pub global activate onepub
onepub login
cd myproject
onepub pub private
dart pub publish
Run Code Online (Sandbox Code Playgroud)

添加 OnePub 上托管的依赖项

cd aproject
onepub pub add myproject
dart pub get
Run Code Online (Sandbox Code Playgroud)

在 CI/CD 管道中,onepub 允许您导出/导入安全令牌以提供身份验证。

有一个适用于小型团队的免费版本。