【问题标题】:How to watch java error output by pages?如何查看页面输出的java错误?
【发布时间】:2015-08-10 22:11:06
【问题描述】:

我有一个程序会抛出StackOverflowException。所以错误输出非常大,我无法从终端读取输出的开头。如何观看所有程序输出?

我知道终端中有类似分页的东西。我在 google 上搜索了一下,找到了使用 moreless 命令的建议。

所以我试过了……

java Program | less

但它不起作用。我做错了什么?

【问题讨论】:

    标签: java linux terminal


    【解决方案1】:

    假设您使用的是bash4,您可以使用|& 来连接std 错误。

    java Program |& less
    

    【讨论】:

    • 谢谢!你的回答很有帮助:)
    • 没问题!如果这回答了您的问题,请投票并标记正确:)
    • 有延迟。我需要等待几分钟才能标记任何答案。
    • 仅供参考,如果不使用 bash,这可能是最便携的解决方案:stackoverflow.com/questions/7526971/…
    【解决方案2】:

    您可以将输出重定向到文件

    java myProgram &>file.log
    

    然后你可以 tail 、 head 或 grep 那个文件。

    【讨论】:

    • 我试过这个,但创建的文件中没有任何内容。它是空的。我不知道为什么。
    • 我更新了它,将stderr的重定向添加到stdout
    • 现在可以了,谢谢!但在这种情况下使用&| 会更容易。
    【解决方案3】:

    使用良好的 IDE(集成开发环境),例如 Eclipse。任何体面的 IDE 都会有调试器模式。

    Java 既是编译型语言又是解释型语言,不仅速度快,而且易于调试。

    IDE 调试器将逐步引导您完成程序执行,这可以帮助您在程序中发现您可能看不到的错误。

    【讨论】:

    • 是的,我知道。但有时在vim中编写小程序然后在终端中运行它会更快。
    猜你喜欢
    • 2010-10-29
    • 2016-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-05
    相关资源
    最近更新 更多