2012-01-25 24 views
16

Giả sử tôi có bản dựng với ba dự án: A, B và C. Nếu tôi hiện đang ở trong ngữ cảnh A và tải lại bản dựng, nó có thể thay đổi ngữ cảnh thành C sau tải lại. Bởi vì điều này, tôi phải thay đổi bối cảnh dự án của tôi mỗi lần sau khi tải lại.Cách đặt dự án mặc định cho SBT

Có cách nào để đặt dự án cụ thể làm ngữ cảnh mặc định không?

Trả lời

8

SBT chọn tên biến dự án lexographical đầu tiên, vì vậy tôi chỉ cần đặt tên dự án của tôi để :

val aaaFrontend = PlayProject(

Ngoài ra, có một dự án mà tôi tin rằng bạn có thể ghi đè.

Cuối cùng, trong SBT 0.12 bạn có thể làm điều đó trong bạn .sbtrc:

alias boot = ;reload ;project X ;iflast shell 
+0

Điều đó ... chỉ hoạt động! Lạ thật. Cảm ơn bạn :) –

3

Không phải là câu trả lời chính xác cho câu hỏi của bạn, nhưng bạn có thể xác định bí danh chạy cả lệnh reloadproject A. Nếu bạn tạo một file .sbtrc trong thư mục gốc của dự án của bạn, sau đó thêm

alias rl = ;reload;project A 

sau đó bạn có thể chỉ cần gõ rl mỗi khi bạn muốn tải lại.

+0

Một điểm cho nỗ lực, nhưng thực sự không phải là điều tôi đang tìm kiếm. Cảm ơn mặc dù :) –

2

Phiên bản tiếp theo của SBT sẽ nhớ mà dự án bạn đang ở và trả lại cho bạn đó sau khi tải lại:

https://github.com/harrah/xsbt/pull/348

+0

Đẹp, nhưng khi bạn tải một hình ảnh sạch của một máy chủ xây dựng cho mỗi xây dựng, điều này sẽ không giải quyết được vấn đề. –

+1

Bạn có thể thêm 'dự án A' vào .sbtrc. – retronym

+0

Công cụ tuyệt vời! Đó là những gì tôi đang tìm kiếm: D –

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