2012-03-05 38 views
15

Tôi có một tệp với nhiều dòng mã scala - nhập, liệt kê các giá trị gán, vv mà tôi thường sử dụng để khởi tạo một số thứ khi sử dụng REPL.Làm thế nào để chạy một tệp bên ngoài từ bên trong trình thông dịch tương tác scala (REPL)?

Hiện tại tôi chỉ mở tệp trong trình chỉnh sửa văn bản và sao chép và dán vào REPL, nhưng có cách nào để làm điều đó bằng cách gọi tệp bên ngoài theo cách trực tiếp hơn vì vậy tôi không có sao chép và dán mỗi lần?

Trong một số công cụ cơ sở dữ liệu tương tác như SQL Plus, nó được thực hiện bằng cách gõ @filename tại dấu nhắc. Có một cái gì đó tương tự như trong Scala REPL? Trước tên tệp có @ không hoạt động, eval cũng không hoạt động.

Trả lời

23

Loại:

:help 

và bạn thấy, đó

:load <path>    load and interpret a Scala file 

giải quyết vấn đề của bạn.

Trong một số trường hợp, dán mã có thể là một lợi thế mặc dù, nhưng sau đó

:paste 

có thể là bạn bè của bạn sau đó. Nó giúp chèn toàn bộ khối mà không có phản hồi, từng dòng một, cho đến khi bạn nhấn Ctrl + D. Trong một số trường hợp, điều này là quan trọng cho việc giải thích mã.

+0

Cảm ơn, đã hoạt động! Tôi không thể tìm thấy tài liệu về REPL ở bất kỳ đâu trên web. Tôi thậm chí không biết rằng ': help' sẽ cho thấy sự giúp đỡ (giới hạn); Tôi đã thử những thứ khác như 'scala /?' Và 'scala -help' tại dấu nhắc lệnh của Windows, và' help' và '?' Trong REPL. – Gigatron

+0

Bạn đã học về ': paste' ở đâu? Nó không được liệt kê với ': help'. Rõ ràng bạn có quyền truy cập vào tài liệu mà tôi không biết. Tôi cũng tự hỏi 'quyền lực' là gì. – Gigatron

+0

': dán' là mới trong 2.9.something, tôi đoán 2.9.1. ': power' lớn hơn một chút, tôi không bao giờ sử dụng nó, ngoại trừ để xem nó là gì. Tôi đoán tôi biết điều đó từ danh sách gửi thư. Từ trang chủ scala tôi không thể tìm thấy một tài liệu ngắn gọn về ': power' hoặc REPL. –

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