【问题标题】:System.out.println not working with threads when executed from console从控制台执行时 System.out.println 不使用线程
【发布时间】:2011-11-02 21:38:17
【问题描述】:

我有一个使用线程来运行繁重任务的应用程序。当线程结束自己的任务时,它会创建一个文件并使用System.out.println() 发送一条消息。

在 Eclipse 中工作正常,但一旦编译成 .jar 并从控制台调用,它不会显示任何内容。 但它会正确创建文件。

发生的事情是,当我通过控制台调用应用程序时,会立即出现一个新的控制台提示,尽管程序还没有完成(我知道是因为还没有生成文件)。

【问题讨论】:

  • 你是如何从控制台执行 jar 的?
  • 只用它的名字,像这样:myApp.jar

标签: java multithreading jar console


【解决方案1】:

我怀疑问题在于您如何执行 jar 文件。如果您只是从 Windows 运行它,它可能正在运行 javaw.exe 例如。只需显式运行它:

java -jar foo.jar

一切都会好起来的。顺便说一句,这与线程无关……这只是 jar 文件的执行方式。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-05-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多