IntelliJ Build不执行sbt'compile'依赖项

时间:2018-05-11 22:19:38

标签: java scala intellij-idea sbt

我是IntelliJ / SBT领域的新手,所以我可能会遗漏明显的事情。 然而,经过大量的谷歌搜索后,我找不到我的问题的答案。 所以这就是:

我已经用sbt设置了IntelliJ(版本2017.3.5),一切正常(差不多)。在我的console.log($(".x").eq(1).data("serial-number")); 文件中,我的build.sbt命令依赖于另一个生成bash脚本的命令。规则如下:

compile

我可以从命令行进入sbt环境(而不是从IntelliJ进入)并执行compile := (compile in Compile).dependsOn(script).value 命令,一切都按预期工作。到目前为止一切都很好。

然而,当我使用IntelliJ打开我的项目并按下compile按钮时,我的项目使用sbt构建(我可以在底部打开的sbt shell窗口中看到它)但是我没有得到我的剧本如果我从 - 已经为我打开 - sbt窗口显式运行Build命令,我会得到我的脚本。

为什么这不适用于IntelliJ中的compile按钮?

我的平台是MacOS。如果需要,我可以提供更多细节。

提前谢谢!

1 个答案:

答案 0 :(得分:4)

我能够通过

在版本2018.1.3和SBT 1.1.5中获得所需的行为
  1. 打开sbt项目工具窗口:View | Tool Windows | sbt
  2. 点击sbt settings图标
  3. 选择Use sbt shell for build and import (required sbt 0.13.5+)
  4. 与往常一样,如果IntelliJ行为不端,请尝试使用nuke选项:

    • Invalidate caches \ Restart...
    • rm -fr .idea并重新导入项目

    或者,我们可以创建自定义run configuration

    1. Run | Edit configurations
    2. 点击+按钮,然后选择SBT Task
    3. 将其命名为Build project
    4. Tasks字段中,输入compile
    5. 点击OK
    6. Run | Run 'Build project'