如何创建一个scala sbt项目模型,并在其他sbt项目中代表一个模型?

问题描述 投票:0回答:1

我有一个scala js sbt项目,我在这个项目中开发了新的用户界面组件。

我有一个scala js sbt项目,我在这个项目中开发了新的用户界面组件,这个人p1有一个结构相同的项目(相同的build.properties & plugins.sbt),他怎么能访问我的用户界面组件。

我应该在build.sbt中添加一些规范吗?

scala sbt scalajs-react
1个回答
1
投票

如果你想共享一些项目设置,你可以创建一个sbt插件 - 它将允许你有一些共同的设置,添加依赖其他sbt插件,甚至覆盖他们的配置。例如,请看 軟件廠 作为一个插件的例子,它是用来在项目之间共享一些公共资源的。

它不会神奇地更新所有的配置,因为。

  • build.properties 是在sbt代码运行之前被评估的
  • 你必须把这个插件添加到 plugins.sbt
  • 你必须在每个项目中创建项目结构

理论上,更多的配置共享可以通过git子模块和提交符号链接到repo来实现,但这是非常错误的--对一个项目的任何改变都会导致另一个项目的改变,你把它们分开是有原因的--如果两个项目都是一样的,你首先会有一个项目。

如果你需要共享代码本身,你可以在另一个项目中构建代码,将其发布到工件工厂并添加依赖关系。

但这只是在你真的有两个项目的情况下,而且完全有可能你只需要一个git项目,有不同的分支,任何开发者都会在自己的分支上工作,然后将修改合并到公共分支,因为这就是使用git的意义。

© www.soinside.com 2019 - 2024. All rights reserved.