2012-06-15 52 views
6

Bối cảnh:IntelliJ IDEA: Chạy hàng loạt kịch bản trước và sau khi Run/Debug Cấu hình

Tôi có một cấu hình Run chạy một maven xây dựng. Tôi đã có một Context Path được thiết lập để nhìn vào Target Directory của thư mục Build, vì vậy tôi không phải tự copy file war mỗi lần chạy một build.

Điều tôi muốn là dành cho cấu hình xây dựng của mình để tự động giết quá trình chạy tomcat, chạy bản dựng và (nếu thành công) khởi động lại tomcat.

Vấn đề:

Tôi muốn chỉ cần gọi start/stop tomcat file batch trước và sau khi xây dựng, nhưng tôi đã trúng hai snags:

  • Trong xây dựng Config -> Trước khi khởi chạy phần, không có tùy chọn để thực thi một tập lệnh batch
  • Có vẻ như không phải là phần "Sau khi xây dựng" để hoàn thành Giai đoạn 2

Có cách nào để bật các tùy chọn này cho cấu hình xây dựng hiện tại của tôi (thông qua plugin hay tương tự) không?

-HOẶC-

Có thể có build cấu hình chạy theo thứ tự (một sau khi khác) và có một plugin hoặc một cái gì đó để tạo ra một kịch bản hàng loạt build cấu hình?

Trả lời

11

Không có cách nào để chạy kịch bản hàng loạt trực tiếp trong IDEA và nó cũng không thể tạo ra một chuỗi các hành động trước khi chạy trong IDEA 11.

Trong IDEA 12 nó sẽ có thể xác định nhiều hành động để thực hiện trước chạy, theo cách này bạn có thể tạo mục tiêu Maven sẽ khởi động lại Tomcat (bằng cách chạy tập lệnh batch hoặc theo cách khác) và trong danh sách Before Launch chỉ định 2 hành động: giết tiến trình Tomcat đang chạy (có thể là mục tiêu Maven khác, cấu hình Chạy khác hoặc tác vụ Ant) và chạy bản dựng (mục tiêu Maven). Sau đây là cách giao diện người dùng này trông giống như trong IDEA 12:

Before Launch

Khi bạn chạy cấu hình này, nó sẽ giết chết Tomcat, thực hiện xây dựng và khởi động lại Tomcat.

Nó cũng sẽ hoạt động nếu bạn chuỗi nhiều cấu hình Chạy với bước Run Another Configuration Trước khi khởi chạy.

IDEA 12 được lên kế hoạch cho đến cuối năm 2012, nhưng các phiên bản EAP đầu tiên sẽ có sẵn sau vài tuần.


Một giải pháp khác là sử dụng một mục tiêu Maven với Mojo Executor hoặc tác vụ Ant sẽ thực hiện tất cả 3 hành động.

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