【发布时间】:2019-06-06 05:00:52
【问题描述】:
由于我的公司协议,我有不想发布到 pub 的 dart 包。如何仅将我的 dart 包用于我的公司而不在 pub dart lang 上显示?
我已查看此链接 https://github.com/dart-lang/pub/issues/1050,但仍需要有关此的更多信息。
【问题讨论】:
由于我的公司协议,我有不想发布到 pub 的 dart 包。如何仅将我的 dart 包用于我的公司而不在 pub dart lang 上显示?
我已查看此链接 https://github.com/dart-lang/pub/issues/1050,但仍需要有关此的更多信息。
【问题讨论】:
如果您将包发布到https://pub.dartlang.org,它将显示出来。没有办法解决这个问题。
替代品。
你可以使用
另见
【讨论】:
Günter Zöchbauer 的答案是正确的,但他没有提供示例。
所以要使用 pub/package/lib 而不在 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”相同。
【讨论】:
本地:
为了处理这个问题,pub 支持路径依赖。
dependencies:
transmogrify:
path: /Users/me/transmogrify
这表示 transmogrify 的根目录是 /Users/me/transmogrify。
【讨论】:
您还可以让其他人运行 pub 服务器(作为服务): https://cloudsmith.io/l/dart-repository/
虽然私有存储库是商业(付费),但公共和开源存储库是免费的。如果您正在寻找无服务器托管解决方案,这是唯一的选择(截至撰写本文时)。
【讨论】: