【问题标题】:How to set up IDEA to execute post compilation task?如何设置 IDEA 执行编译后任务?
【发布时间】:2015-02-14 16:13:16
【问题描述】:

编译完成后尝试运行一些代码时,我在我的 sbt build 中写了以下内容:

compile in Compile <<= (compile in Compile) map { x=>
    // post-compile work
    doFoo()
    x
}

如果我从命令行运行 sbt compile 效果很好,但当我从 IntelliJ IDEA 构建时不会执行。

有什么方法可以让 IntelliJ IDEA 运行我的编译后步骤?

【问题讨论】:

  • 我不知道运行该编译后步骤的方法,但在某些情况下,作为获得类似行为的解决方法,您可以使用 Before launch from Run/Debug Configurations SBT 任务执行。见SBT plugin documentation
  • 我相信是这样,因为我在 build.properties 中指定了版本。但不管 SBT 版本如何,IDEA 似乎没有使用编译步骤,而是使用了其他方法

标签: intellij-idea sbt


【解决方案1】:

不幸的是,IntelliJ IDEA 支持的唯一方式似乎是通过 Ant。

VS post build event command line equivalent in IntelliJ IDEA?

另外,如果你走这条路,你可能有兴趣使用ant4sbt

【讨论】:

    【解决方案2】:

    IDEA 具有运行/调试配置。

    Before Launch 选项中,通常我们将Make 作为默认操作。

    只需在 Make 之后添加 Run external Tool 操作即可。我们可以定义任意数量的动作。

    外部工具可以调用SBT

    或者我们可以删除Make并调用SBT来处理所有的过程。这样做的唯一不便之处是编译时出现语法错误不太舒服。

    【讨论】:

      猜你喜欢
      • 2015-09-01
      • 2021-05-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-10
      相关资源
      最近更新 更多