IntelliJ IDEA:在单个项目中支持SBT和Maven

4

我已经在IntelliJ IDEA上基于SBT有一个项目了。它可以很好地编译和运行。现在我想添加Maven支持。 在IntelliJ IDEA中如何实现同时支持SBT和Maven两种构建工具,并在同一个项目中进行切换?


1
为什么有人想要这样做? - Mysterion
2
但我的问题是是否可能,而不是是否有意义。可能会有不同的人使用该项目,他们更喜欢使用不同的构建管理器。 - ppatierno
你希望他们每次都在pom和sbt中添加依赖关系吗?这很麻烦且错误率高达100%,所以我的问题是一样的,为什么有人想要这样做呢? - Mysterion
1
这很繁琐,但是可能吗? - ppatierno
1个回答

0

根据我的经验,你应该启用maven或sbt中的一个。不要同时启用两个。

解决方案:

  • 从代码库中检出项目到project_sbt目录
  • 在Intellij中打开sbt项目(只需从磁盘打开project_sbt/build.sbt
  • 从代码库中检出相同的项目到project_maven目录。
  • 在Intellij中打开maven项目(只需从磁盘打开project_maven/pom.xml

这种解决方案的缺点:

  • sbt项目中的更改不会立即在maven项目中显示(反之亦然)
  • 您必须维护两个构建系统(特殊插件)

我知道这很麻烦,但非常感谢您的回复!所以唯一的方法是打开同一个项目两次:作为SBT和Maven。 IntelliJ没有提供从一个切换到另一个的方法。谢谢! - ppatierno
对于稍微复杂一些的项目,我认为这将远远超出繁琐的范畴。构建系统是管理实例,应该掌控您的项目。让两个系统试图控制一个项目可能会导致非常奇怪的构建结果。所以这就是为什么没有简单的开关的原因,依我之见。 - Det

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接