You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何激活带有公共依赖的自托管全局Dart包?

解决Dart私有仓库与pub.dev依赖共存问题

你不需要托管所有第三方依赖,问题出在你全局覆盖了PUB_HOSTED_URL,导致pub尝试从私有仓库拉取所有包(包括只在pub.dev存在的glob)。以下是正确的解决方式:

方法一:全局激活时指定私有仓库源

直接在激活命令中明确指定你的私有仓库作为my_package的来源,pub会自动从默认的pub.dev拉取其他依赖:

dart pub global activate --source hosted --hosted-url https://dart.pkg.jetbrains.space/path/to/my/repo my_package

方法二:配置全局pubspec映射(适合频繁使用私有包)

如果你需要经常使用这个私有仓库的包,可以在全局pub配置文件中添加映射,避免每次都输入仓库地址:

  1. 打开全局pubspec文件(路径为~/.pub-cache/pubspec.yaml,Windows系统为%APPDATA%\Pub\Cache\pubspec.yaml)
  2. 添加以下内容:
dependencies:
  my_package:
    hosted:
      url: https://dart.pkg.jetbrains.space/path/to/my/repo
  1. 之后直接运行dart pub global activate my_package即可,pub会自动从对应仓库拉取my_package,并从pub.dev拉取依赖。

注意事项

  • 不要设置全局的PUB_HOSTED_URL,除非你所有依赖都托管在私有仓库中
  • 确保已经正确执行过dart pub token add https://dart.pkg.jetbrains.space/path/to/my/repo并输入了有效密钥

内容的提问来源于stack exchange,提问作者ncuillery

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 14:24:54