2011-01-19 29 views
23

Trong Eclipse, có thể chuyển hướng đầu ra bàn điều khiển sang tệp nhật ký bằng cách sử dụng phương pháp được nêu here.Có thể chuyển hướng đầu ra bàn điều khiển sang tệp nhật ký trong IntelliJ như Eclipse không?

Có tính năng tương tự trong IntelliJ IDEA không?

+1

Nó không đẹp , Là nó? Nếu điều này không thể được thực hiện thì kể từ khi chuyển từ Eclipse, đây là điều duy nhất tôi thấy rằng IntelliJ không thể làm điều đó mà Eclipse có thể làm được. – rmcc

Trả lời

26

Hiện không thể có trong IDEA, tôi đã gửi new feature request. Hãy bình chọn.

Một cách giải quyết có thể được thực hiện bằng wrapper class với phương pháp main() mà sẽ chuyển hướng stdoutstderr các tập tin và sau đó chạy các lớp chính của ứng dụng của bạn.

CẬP NHẬT: tính năng này là available in IDEA 11.

+1

Chỉ cần bỏ phiếu. Đề nghị tốt với lớp wrapper, tiếc là điều đó không khả thi trong dự án hiện tại của chúng tôi nên tính năng mới này sẽ tuyệt vời! – rmcc

+0

Rất hữu ích. Cảm ơn các cập nhật. Đúng thứ tôi cần. – kevinarpe

+2

Thật không may là tính năng không giải quyết được vấn đề - nó nắm bắt cả 'stdout' và' stderr', vì vậy nếu bạn muốn xem thông báo chẩn đoán trong IDEA và đưa dữ liệu đầu ra của chương trình vào một tệp, bạn sẽ không may . –

16

Trong các phiên bản mới hơn của IntelliJ, điều này là có thể. Chuyển đến tab "Nhật ký" của cấu hình chạy. Có một "Save console output to file option".

Tôi đang sử dụng IntelliJ 13.1.3 nhưng tôi nghĩ tính năng này đã diễn ra trong một thời gian.

+0

Đẹp, nhưng không hoạt động cho các tác vụ Gradle trong IntelliJ 2016 Tôi không có tab cho "Nhật ký" Tôi sẽ tiếp tục tìm kiếm nhưng cảm ơn câu trả lời xuất sắc +1 – JimLohse

+1

Dường như luôn ghi đè tệp nhật ký, thay vì phụ thêm. – jyu

+0

Có, tính năng này đã tồn tại miễn là tôi có thể nhớ. Có thể quay trở lại đầu những năm 2000 – Synesso

2

Xét kịch bản, nơi bạn muốn chụp nhật ký thu được trên giao diện điều khiển qua System.out.println("log info"), bạn có thể nhập khẩu các loại sau đây:

import java.io.FileOutputStream; 
import java.io.PrintStream; 

và thiết lập các dòng đầu ra vào một tập tin như thế này:

System.setOut(new PrintStream(new FileOutputStream("log_file.txt"))); 

Điều này sẽ chuyển hướng tất cả văn bản đến tệp có tên log_file.txt . Bạn cũng có thể xem qua số này tutorial. Hi vọng điêu nay co ich. :)

0

Đầu ra bảng điều khiển chuyển hướng có thể có thành tệp nhật ký. Chạy -> Chỉnh sửa cấu hình. Để xem cửa sổ Run/Debug Configurations Sau đó vào tab: Logs, check in "Save console output to file:" và điền vào đường dẫn file (ví dụ D: \ logtoFile.txt) Tham khảo tại đây: https://www.jetbrains.com/help/idea/2017.1/setting-log-options.html

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