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

问题描述:

我已经在基于SBT的IntelliJ IDEA中有一个项目。它工作正常,编译和运行。现在我想添加Maven支持。 IntelliJ IDEA如何在同一个项目中同时支持构建管理器SBT和Maven并在它们之间切换?IntelliJ IDEA:在单个项目中同时支持SBT和Maven

+1

为什么要这么做? – Mysterion

+0

但我的问题是,如果它是可能的,如果它确实有道理。这个项目有可能被不同的人使用,他们更喜欢使用不同的构建管理者。 – ppatierno

+0

,你期望他们每次都在2个文件中添加依赖项?在pom和sbt?它很麻烦,容易出错100%,所以我的问题是一样的,为什么要这么做呢? – Mysterion

根据我的经验,您应该启用maven或sbt。从来没有。

解决办法:

  • 结算项目从仓库到project_sbt目录
  • 开放项目的IntelliJ为SBT项目(只需打开project_sbt/build.sbt从磁盘)
  • 结帐从库项目同一个项目中project_maven目录。
  • 开放项目的IntelliJ作为Maven项目(只需打开project_maven/pom.xml从磁盘)这种解决方案的

缺点:

  • 变化SBT项目不在Maven项目立即可见(反之亦然)
  • 您必须维护两个构建系统(特殊插件)
+0

我知道这很麻烦,但非常感谢您的回复!所以唯一的办法是两次开放同一个项目:像SBT和Maven一样。 IntelliJ不提供从一个切换到另一个的方法。谢谢 ! – ppatierno

+0

对于任何稍微复杂的项目,我都会认为它比繁琐。构建系统是管理实例,应该保持对项目的指挥和控制权。有两个系统试图控制项目可能会导致非常奇怪的构建结果。所以这就是恕我直言为什么没有简单的开关的原因。 – Det