【问题标题】:Jar not visible, but javaw.exe is runningjar 不可见,但 javaw.exe 正在运行
【发布时间】:2015-06-11 00:33:37
【问题描述】:

在我的一个 Windows 系统上,我在运行 Jar 文件时遇到问题。

当我双击我的 jar 文件时,第一个 jFrame(启动屏幕)出现并再次隐藏,但主 jFrame 不可见......当监控我的服务时,我注意到 javaw.exe 一直在运行...

从命令提示符 (java -jar c:\myJar.jar) 启动 Jar 时,一切正常...

我尝试在运行 jar 时创建输出文件,该文件已创建,但仍为空 (java -jar c:\myJar.jar > d:\output.txt)

有人知道可能是什么问题吗?

【问题讨论】:

  • 请发SSCCE 说明问题。

标签: java swing jar


【解决方案1】:

Java 应用程序将在其所有线程完成工作后关闭(javaw.exe 将关闭)。因此,您可能只是在处理用于生成 JFrame 的线程,但其他一些线程仍在运行(并且可能正在等待某些东西)。

如果没有关于您的特定应用程序的更多信息(例如您的代码),我无法进一步帮助您

【讨论】:

  • 这也可能是与 Windows 相关的问题,因为我只在 5 台计算机中的 1 台上遇到此问题...?
【解决方案2】:

使用VisualVM(位于您的JDK bin 目录中)附加到Java 进程并查看线程在做什么。

您是否尝试过从命令行运行应用程序,但改用 javaw? javaw 无法访问控制台,它使用不同的 Win32 子系统(WINDOWS 与 CONSOLE)。

【讨论】:

  • 从命令行使用 javaw.exe -jar 时。我也有同样的问题。使用 java.exe -jar 时,效果很好...
  • 找出线程在做什么,尽管@Zereges 的回答可能很划算。
【解决方案3】:

我发现了问题。

出现问题的计算机正在运行 Dexpot(多桌面软件)...似乎其中一个桌面已损坏,导致出现问题。

特别感谢 aioobe、jdv 和 Zereges 的所有帮助...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-12
    • 2017-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多