首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用模块发布Scala库

用模块发布Scala库
EN

Stack Overflow用户
提问于 2022-01-19 12:11:42
回答 1查看 88关注 0票数 0

我必须创建Scala库,它应该被划分为核心模块和包含其他特性的模块(比如zio核心和zio流)。我的想法是把他们放在单独的github回购,但在不同的子项目。我该怎么做?我必须单独发布这些模块吗?他们能有不同的版本吗?

另外,我还不清楚库用户是否应该只包括“功能模块”,后者将临时包含核心模块。同样,这意味着在ZIO情况下,我只能包含zio流,并且我可以使用zio核心。

EN

回答 1

Stack Overflow用户

发布于 2022-01-19 13:59:52

,我该怎么做?

按照您刚才描述的方式,有多个sbt模块。

我必须分别发布这些模块吗?

通常有一个root模块,聚合所有其他模块,如coreextras (依赖于core__),以及发布root,后者将临时发布其他模块。

他们能有不同的版本吗?

没有什么能阻止你有不同的版本..。但是,我从未见过一个库这样做,当版本不能相同时,它们在单独的github repos中(这是有意义的,因为最终您可能会有一个自动化的过程,同时发布所有这些版本)。

另外,我不清楚库用户是否应该只包括“功能模块”,而后者会临时包含核心模块。

如果您遵循前面的模式,extras的POM将提到core,因此库的用户只能导入extras,他们的构建工具将临时获取core

然而,无论他们是否愿意这样做(或者他们认为这是一种最佳/糟糕的实践),而不是显式地包括core,这都取决于他们自己。这个主题有些争议,尽管大多数人都认为,如果您显式地使用了库中的某些内容,那么您必须显式地依赖它;参见:https://github.com/cb372/sbt-explicit-dependencies

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70770368

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档