每当编译导致错误输出超过一个屏幕时,我必须向后滚动以查看第一个错误(可能是后一个错误的原因)并修复它。这在Screen中尤其令人痛苦,我首先要按ctrl + Esc滚动。
javac
中是否有一个命令行开关可以让错误消息以相反的顺序显示,或者是否有一些通用的命令行魔法可以达到同样的效果?
更新:为了澄清,我总是使用命令行进行编译,IDE不是一个选项。
答案 0 :(得分:3)
如果要停止第一次编译错误,则应该使用-Xmaxerrs 1
。您可以修复该错误并再次编译。
修改强>
如果您位于* nix环境下,将stderr
重定向到stdout
会使head
,more
,less
等大多数工具生效。编译错误打印到stderr
。
javac File.java 2>&1 | less
<强> EDIT2 强>
您也可以使用-Xstdout filename
答案 1 :(得分:1)
在命令行中将输出传递给more
,或者更好地使用像Eclipse这样的IDE。
javac file.java | more
现在按空格键让输出滚动(或逐行输入),如果它有多个屏幕页面。