构建 maven 项目作为 SBT 构建的一部分

Posted

技术标签:

【中文标题】构建 maven 项目作为 SBT 构建的一部分【英文标题】:Build maven project as a part of SBT build 【发布时间】:2013-11-09 13:40:24 【问题描述】:

我有一个依赖于 maven 项目的 sbt 项目。 是否可以将该 maven 项目制作为 sbt 项目的子模块,并将该 maven 项目作为 SBT 构建的一部分一起构建?

【问题讨论】:

最后,我将maven项目转换为SBT项目。 【参考方案1】:

尝试添加到你的maven项目build.sbt:

name := "mavenDep"

scalaVersion in Global := "2.10.2"

externalPom()

请参阅Sbt documentation: Maven pom (dependencies only) externalPom 不添加 maven 存储库 - 只是依赖项。

所以你必须手动添加其他存储库:

resolvers in Global ++= Seq(
  "snapshots" at "http://oss.sonatype.org/content/repositories/snapshots",
  "releases"  at "http://oss.sonatype.org/content/repositories/releases"
)

【讨论】:

无法使用maven settings.xml文件?【参考方案2】:

你也可以试试这个:

https://github.com/sbt/sbt-pom-reader

对于有限的 maven 项目集(即不使用插件的项目),它可以以稍微更好的方式将信息从 maven 拉入 sbt。然而,将 maven 插件映射到 sbt 实际上是一项失败的任务。

【讨论】:

以上是关于构建 maven 项目作为 SBT 构建的一部分的主要内容,如果未能解决你的问题,请参考以下文章

如何构建运行测试套件的 Maven 工件? “sbt 测试”如何工作?

1-1 maven 学习笔记构

maven项目构建

Chisel3-Intellij IDEA中使用sbt构建Chisel项目

IDEA中使用SBT构建SCALA项目

等效于 sbt 的 maven 原型