2013-01-19 18 views
6

Tôi không gặp vấn đề gì khi sử dụng jline khi mã chạy trong ý tưởng. Chạy với một tập tin dơi, các ký tự chỉnh sửa sẽ không được gửi đến thiết bị đầu cuối.JLine chỉ hoạt động từ IDEA

java -classpath ..\JActor\target\classes;..\JID\target\classes;target\classes;..\slf4j-api-1.7.2.jar;..\slf4j-simple-1.7.2.jar;..\apache-sshd-0.8.0\lib\sshd-core-0.8.0.jar;..\apache-sshd-0.8.0\lib\mina-core-2.0.5.jar;..\apache-sshd-0.8.0\lib\bcprov-jdk15-140.jar;..\jline-2.9.jar;..\joda-time-2.1.jar org.agilewiki.jasocket.sshd.SSHServer %1% 

Tôi đã kiểm tra tệp jar jline và nó chứa mã fusesource cho jansi và hawtjni.

+0

Thiết bị đầu cuối của bạn chưa được mã hóa? –

+0

Tôi đang sử dụng sshd để hỗ trợ truy cập từ xa qua PuTTY. Tôi đang bối rối rằng chạy từ IDEA sẽ làm cho một sự khác biệt, mặc dù tôi có cảm giác rằng jline mong muốn được tương tác với máy địa phương. Vì vậy, kể từ khi tôi đang chạy từ một cửa sổ lệnh cửa sổ, đó có thể cho tôi một vấn đề. Bất kỳ cách nào để buộc nó? –

+0

tạo môi trường phù hợp để thực hiện IO trong trường hợp đó –

Trả lời

3

Hóa ra, Thiết bị đầu cuối được sử dụng theo IDEA và hộp dos khác nhau. Buộc việc sử dụng thiết bị đầu cuối IDEA trong mọi trường hợp không hoạt động, nhưng điều này đã làm:

consoleReader = new ConsoleReader(in, out, new TerminalSupport(true) {}); 
+1

Vấn đề này xảy ra khi chạy từ bên trong Eclipse, và sau đó từ bên trong Tomcat. Công việc sửa lỗi đã cho, mặc dù tôi vẫn không hiểu tại sao mặc dù tôi đã xem xét mã JLine2. – kaliatech

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