使用Intellij自动导入的自定义sbt配置

问题描述:

我无法在Intellij(13.1)中获得嵌入式sbt插件(并启用自动导入)来识别自定义sbt配置。我在我的SBT构建文件如下设置:根据在SBT控制台预期使用Intellij自动导入的自定义sbt配置

lazy val EndToEndTest = config("e2e") extend (Test) 

    private lazy val e2eSettings = 
    inConfig(EndToEndTest)(Defaults.testSettings) 

    lazy val root: Project = Project(
    id = "root", 
    base = file(".") 
) 
    .configs(EndToEndTest) 
    .settings(e2eSettings) 

代码工作。例如我可以写: sbt e2e:测试(并且它将执行位于/ src/e2e/scala中的测试)

问题是目录/ src/e2e/scala不会被注册为源目录在Intellij。这使得很难使用intellij来管理测试。我可以手动将目录标记为源,但每次都得到恢复

  1. 我更新了我的sbt文件(自动导入)。 使用预配置的配置预期,但一旦定制不IntegrationTest工作:
  2. 通过SBT工具窗口

相关执行手动更新。

根据sbt-idea documentation这可以在你的情况下,通过增加

ideaExtraTestConfigurations := Seq(EndToEndTest) 

到您的项目设置来完成。

+1

我没有使用sbt-idea sbt插件。 Intellij从版本13开始支持sbt支持。您是否说Intellij使用sbt-idea插件? – Tobias 2015-04-12 03:11:16