我刚为IntelliJ安装了SBT plugin并成功导入了我的项目。 IntelliJ中的SBT控制台按预期显示,但由于我的项目布局,我无法使用它。整个问题是我的SBT Play! project不是顶级目录。相反,我有几个子模块的maven父pom,其中放置了我的SBT应用程序。这就是它的样子:
MyProject (parent pom)
-> submodule1 (JAR)
-> submodule2 (JAR)
-> webapp (SBT Play! webapp module)
运行Play没有问题!来自Linux CLI的应用程序,以前将目录更改为MyProject\webapp
并从那里执行SBT。但是,我没有看到在IntelliJ中为SBT控制台设置root目录的任何选项。我将整个项目导入到工作空间中,因此默认项目根目录为MyProject
,显然不会将其作为SBT项目处理。
有没有办法更改IntelliJ SBT插件的“工作目录”?
答案 0 :(得分:2)
我有同样的问题,这就是我如何实现的目标:
导入sbt._ 导入密钥._
object HelloBuild extends Build { lazy val root = Project(id = "MyProject", base = file(".")) aggregate(submodule1, submodule2, webapp) lazy val submodule1 = Project(id = "submodule1", base = file("submodule1")) lazy val submodule2 = Project(id = "submodule2", base = file("submodule2")) lazy val webapp = Project(id = "webapp", base = file("webapp")) }
reload
命令应用更改。您可以使用projects
命令列出SBT识别为模块的项目。使用project [projectName]
切换项目。因此,要切换到子模块2,只需键入project submodule2.