如何将SBT管理的scala项目与Maven管理的Java项目合并?

如何将SBT管理的scala项目与Maven管理的Java项目合并?,java,scala,maven,sbt,Java,Scala,Maven,Sbt,我有一个用Java编写并由Maven管理的遗留应用程序 最近我想修改代码,使应用程序能够在多台机器的集群上运行。我想从activator的akka示例集群scala模板开始,该模板是用scala编写的,由SBT管理 我的问题是:如何将这两个项目合并在一起,这样我就可以访问akka示例集群scala项目中的Java类,或者将代码从akka示例集群scala项目复制到Java项目中并使其工作。使Maven项目成为SBT项目的库依赖项 resolvers += Resolver.mavenLocal

我有一个用Java编写并由Maven管理的遗留应用程序

最近我想修改代码,使应用程序能够在多台机器的集群上运行。我想从activator的akka示例集群scala模板开始,该模板是用scala编写的,由SBT管理


我的问题是:如何将这两个项目合并在一起,这样我就可以访问akka示例集群scala项目中的Java类,或者将代码从akka示例集群scala项目复制到Java项目中并使其工作。

使Maven项目成为SBT项目的库依赖项

resolvers += Resolver.mavenLocal
libraryDependencies += "com.originjing" %% "legacy-app" & "1.0.0"

Maven和SBT有完全独立的插件集,但使用相同的Maven中央存储库下载依赖项和相同的目录约定

要在Maven项目中使用示例,我将尝试在Maven构建中进行配置。这似乎更简单。但是,如果您希望使用SBT,您需要:

  • 创建一个SBT项目
  • 将Java代码放到src/main/Java或复制整个多模块结构(如果此代码有多个模块)
  • 将依赖项复制到SBT生成文件
  • 找到SBT的插件等价物(如果存在),并在SBT中进行配置。看起来很棘手,不过

  • 我尝试了这种方法,它是有效的,顺便说一句,我使用流动脚本将maven依赖项转换为sbt格式,这使工作更容易。我尝试了另一种方法,Resolver+=Resolver.mavenLocal解决了部分问题。谢谢。@OriginJing一旦你获得了15个声誉,你可以投票选出你认为有用的答案。