引用本地dart库

Dan*_*son 2 dart dart-pub

我正在写4个dart库A,B,C和D,它们都处于早期开发阶段,所以我不想在pub上发布它们.

还有一种情况是,只有A,B和C是公共图书馆,所有公共图书馆都依赖于D,这对于这三个图书馆来说应该是私有的.我如何管理这样的情况?

我可以使用pub在我的本地开发机器上为A,B和C安装库D,但它没有发布吗?如何在没有发布D的情况下完成A,B和C的发布,如果不被A,B或C使用,则D看起来不是特别有用?

我已经阅读了入门指南包结构文档,但似乎都没有涵盖这种情况,即如何管理私有库.还有这个问题,但用户在解决她的问题后没有回答.

Pix*_*ant 6

默认情况下,依赖项解析为Pub,但您可以覆盖它以从URL,git和本地路径导入包.

例如,以下是导入本地包的语法:

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

有关详细信息,请参阅Pub Dependencies.

至于问题的其他部分,我看不出A,B和C在逻辑上如何成为公共包并依赖私有包.我会发布所有的包,只是包含在D的描述中,它不是一个独立的包,只是作为A,B和C的帮助包.

您还可以将A,B和C发布到Pub并在github或公共URL上托管D,并在pubspec中为A,B和C指定相关的URL依赖关系(请参阅上面的链接以获取正确的语法).这可能会使D与其他库之间的区别更加清晰,但实际上它们仍然是公开可用的包.