System.out.println从控制台执行时不使用线程

时间:2011-11-02 21:38:18

标签: java multithreading jar console

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

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

当我通过控制台调用应用程序时,会出现一个新的控制台提示,虽然程序还没有完成(我知道它因为还没有生成文件)。

1 个答案:

答案 0 :(得分:3)

我怀疑问题是你是如何执行jar文件的。如果您只是从Windows运行它,它可能与javaw.exe一起运行。只需明确地运行它:

java -jar foo.jar

一切都应该没问题。顺便说一句,这与线程无关......它只是jar文件的执行方式。