我将一个SBT项目导入Intellij 13.1。
每当我更改build.sbt,plugins.sbt等时,Intellij都会重新运行SBT。
有时这很好,但是当我在控制台中做很多事情,经过频繁更改后,我必须等待因为我的IDE锁定了SBT(并且SBT是sloooow)。
无论如何,我可以关闭Intellij中的自动SBT运行吗?我更愿意在提供的SBT窗口中自己完成。
答案 0 :(得分:23)
导入SBT项目时,我会取消选中autoimport复选框。
通过这种方式,它不会自动刷新,必须手动完成。
为了更改它,导入后,您可以手动编辑.idea/sbt.xml file
:
<project version="4">
<component name="ScalaSbtSettings">
<option name="linkedExternalProjectsSettings">
<SbtProjectSettings>
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="jdk" value="1.7" />
<option name="resolveClassifiers" value="true" />
<option name="useAutoImport" value="true" />
</SbtProjectSettings>
</option>
</component>
</project>
并更改useAutoImport
设置。
如有必要,请重新启动IDEA。
更新:同样在设置页面中,搜索SBT,您可以在那里启用或禁用SBT文件的自动导入。
在对.sbt文件执行繁重工作时,我禁用自动导入。
答案 1 :(得分:20)
IntelliJ 14.1现在允许您在导入项目后调整SBT设置。
档案&gt;设置&gt;构建&gt;构建工具&gt; SBT (或单击SBT项目面板上的设置按钮。)
取消选中&#34;自动导入&#34;。
这是david.perez的答案的用户友好型等价物。
答案 2 :(得分:14)
在IntelliJ 2017.1及更高版本中,您打开右侧边栏上的SBT projects
窗口,右键单击项目名称,然后取消选中Auto-import
选项
答案 3 :(得分:0)
这并没有完全解决它,但我发现从IntelliJ项目中删除所有target/
目录有很大帮助,并大大减少了常春藤锁的等待。
对于所有target/
目录,右键单击,将目录标记为已排除。如果您正在使用sbt子项目,那么您将拥有其中的多个(否则只有一个)。
来源:https://twitter.com/andstuff/status/516987670170697728
相关问题:How to stop auto-refreshing of SBT modules upon opening project in IDEA?,建议升级到IDEA 14预览版。
答案 4 :(得分:0)
答案 5 :(得分:0)