是否有 "any" 可能的方法将本地 Scala 库与我们当前的项目同步,以便获得某种 "hot reloading" 的内容?

Is there "any" possible way to Sync a local Scala library with our current project in order to have some sort of "hot reloading" of it?

我一直在用 Scala 创建一些项目,可能已经有几个组件是我经常使用、重用或以不同方式实现的,我想开始将所有这些东西放在某种库中,但是问题是我真的很想有机会在工作时检查它的实现,就像每当我们需要在控制台中查看代码更改时 revolver 插件带来的漂亮的“热重载”

现在很清楚,每当我想发布一些东西时,设置我的本地 build.sbt 文件并发布它

sbt publishLocal

然后将它们作为

"eu.myproject" %% "my-lib" % "1.0.0"

但我真的很希望有一种方法可以通过一些实时同步来使用这个库,以便查看更改而不必为每个更改发布它们


更新

所以感谢 Matthias Berndt 我设法更新了一个项目,通过配置 sbt 文件仍然使用左轮手枪进行了一些不错的热重载作为

lazy val root = Project ....
  .dependsOn(
    ProjectRef(file("/HOME/my-lib"), "my-lib"))

我仍然会研究一个很好的模式来引入更多本地和已发布的库,以便将它们用于开发和生产

您可以使用 ProjectRef 将库作为子项目添加到使用该库的程序的构建系统中。

看看这个问题:

这篇博客 post 应该也有帮助: https://eed3si9n.com/hot-source-dependencies-using-sbt-sriracha