2014-10-04 18 views
21

Tôi đã nhập một dự án SBT vào Intellij 13.1.Làm thế nào để ngăn chặn Intellij tự động chạy SBT

Bất cứ khi nào tôi thay đổi build.sbt, plugins.sbt, v.v., Intellij sẽ chạy lại SBT. Đôi khi điều đó thật tuyệt, nhưng khi tôi làm nhiều thứ trong bảng điều khiển, và sau khi thay đổi thường xuyên, tôi phải đợi vì IDE khóa SBT khi chạy (và SBT là sloooow).

Dù sao, tôi có thể tắt chạy SBT tự động trong Intellij hay không. Tôi muốn tự làm điều đó, từ cửa sổ SBT được cung cấp.

Trả lời

16

IntelliJ 14.1 giờ đây cho phép bạn điều chỉnh cài đặt SBT sau khi nhập dự án.

File> Cài đặt> Build> Build Tools> SBT (Hoặc nhấp vào nút cài đặt ở SBT bảng dự án.)

Bỏ chọn "tự động nhập khẩu".

enter image description here

này là tương đương với sử dụng các câu trả lời david.perez của.

+0

Họ dường như đã giảm hỗ trợ cho điều đó trong IDEA-2017.1. Thật đáng tiếc, nó rất hữu ích. Bạn có thể làm mới cấu trúc khi bạn thực sự thực hiện lặp lại của mình. Và một dự án làm việc đã không phá vỡ trừ khi bạn đã làm nó cho mình. – VasyaNovikov

0

Điều này không giải quyết được hoàn toàn, nhưng tôi nhận thấy rằng việc xóa tất cả các thư mục target/ khỏi dự án IntelliJ giúp giảm rất nhiều và giảm đáng kể việc chờ khóa Ivy.

Đối với tất cả target/ thư mục, hãy nhấp chuột phải, Đánh dấu thư mục là, bị loại trừ. Nếu bạn đang sử dụng các dự án con sbt, bạn sẽ có nhiều trong số này (nếu không, chỉ một).

Nguồn: https://twitter.com/andstuff/status/516987670170697728

vấn đề liên quan: How to stop auto-refreshing of SBT modules upon opening project in IDEA?, đề nghị nâng cấp lên IDEA 14 phiên bản Preview.

18

Tôi sẽ không chọn hộp kiểm tự động nhập khi nhập dự án SBT.

Bằng cách này, nó không tự động làm mới, nó phải được thực hiện bằng tay.

Để thay đổi nó, sau khi nó đã được nhập, bạn có thể chỉnh sửa bằng tay các .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> 

và thay đổi các thiết lập useAutoImport. Nếu cần, hãy khởi động lại IDEA.

CẬP NHẬT: Cũng trong trang cài đặt, tìm kiếm SBT và tại đó bạn có thể bật hoặc tắt tự động nhập tệp SBT.

Khi thực hiện công việc nặng nhọc trên tệp .sbt, tôi tắt tự động nhập.

+0

Là resolveClassifiers chịu trách nhiệm tải xuống nguồn và tài liệu cho phụ thuộc không? – Yar

+0

Tuyệt vời! Vì một lý do nào đó, tôi gặp khó khăn trong việc tìm ra thiết lập đó. – akauppi

0

Không có câu trả lời nào trước đây có hướng dẫn rõ ràng cho Mac.

Trên Mac workflow là IntellJ IDEA> Preferences> Xây dựng, thi công, triển khai> Build Tools> SBT> Sử dụng Auto-Import

Mac Version 16 SBT

+0

... và nó đã lỗi thời. Không có cài đặt nào như năm 2017.1 theo như tôi thấy. – VasyaNovikov

+0

Nó hiển thị cho tôi nếu tôi có một dự án SBT mở –

+0

Tôi nhìn thấy các cài đặt nói chung, nhưng không có hộp kiểm "Sử dụng tự động nhập" trong đó. Đối với phiên bản IDE 2017.01 mà tôi vừa nâng cấp lên. Bạn có 2017.01? – VasyaNovikov

10

Trong IntelliJ năm 2017.1 và sau đó, bạn mở cửa sổ SBT projects ở thanh bên phải, nhấp chuột phải vào tên dự án và bỏ chọn tùy chọn Auto-import

Các vấn đề liên quan