我將一個SBT項目導入Intellij 13.1。如何阻止Intellij自動運行SBT
每當我更改build.sbt,plugins.sbt等時,Intellij會重新運行SBT。
有時候,這很好,但是當我在控制檯中做了很多事情,並且頻繁更改之後,我必須等待,因爲我的IDE鎖定了SBT運行(並且SBT很慢)。
無論如何,我可以關閉Intellij中的自動SBT運行。我希望自己從提供的SBT窗口中完成。
我將一個SBT項目導入Intellij 13.1。如何阻止Intellij自動運行SBT
每當我更改build.sbt,plugins.sbt等時,Intellij會重新運行SBT。
有時候,這很好,但是當我在控制檯中做了很多事情,並且頻繁更改之後,我必須等待,因爲我的IDE鎖定了SBT運行(並且SBT很慢)。
無論如何,我可以關閉Intellij中的自動SBT運行。我希望自己從提供的SBT窗口中完成。
IntelliJ 14.1現在允許您在導入項目後調整SBT設置。
文件>設置>生成>生成工具> SBT (或單擊SBT項目面板上的設置按鈕。)
取消選中 「自動導入」。
這是用戶友好相當於david.perez的答案的。
這並不能完全解決這個問題,但我發現從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預覽版本。
我會在導入SBT項目時不選中自動導入複選框。
這樣,它不會自動刷新,必須手工完成。
爲了改變它,它已經被導入後,您可以通過手工編輯.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。
UPDATE:同樣在設置頁面中,搜索SBT,在那裏可以啓用或禁用自動導入SBT文件。
在對.sbt文件進行繁重工作時,我禁用自動導入。
...已經過時了。就我所知,沒有像2017.1這樣的設置。 – VasyaNovikov 2017-04-10 12:50:04
如果我打開了一個SBT項目,它會顯示給我 – 2017-04-10 13:09:27
我通常會看到這些設置,但其中沒有「使用自動導入」複選框。對於我最近升級到的2017.01 IDE版本。你有2017.01嗎? – VasyaNovikov 2017-04-10 13:33:46
在2017年的IntelliJ。1和更高版本,您打開右側邊欄上的SBT projects
窗口,右鍵單擊項目名稱,並取消選中Auto-import
選項
他們似乎放棄了對IDEA-2017.1的支持。很遺憾,這非常有用。當你真的完成迭代時,你可以刷新結構。除非你自己做,否則一個工作項目不會中斷。 – VasyaNovikov 2017-04-10 12:49:08