【问题标题】:zombie java interpreter after launching applet prevents java console to reappear if relaunched启动小程序后的僵尸 Java 解释器会阻止 Java 控制台在重新启动时重新出现
【发布时间】:2012-01-02 01:21:27
【问题描述】:

我有一个可以作为 JFrame 或小程序运行的 java 应用程序。

在浏览器中启动小程序会在浏览器中添加一个新选项卡,并且还会显示 Java 控制台。在我关闭它们之后,我希望能够重复此操作并看到 Java 控制台重新出现。 它不会再次出现,但是我可以在浏览器中重新加载我的小程序。

每次我必须杀死这个由firefox启动的僵尸java解释器进程。

/usr/lib/jvm/java-6-sun-1.6.0.26/jre/bin/java -D__jvm_launched=22906841394 -Xbootclasspath/a:/usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/deploy.jar:/usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/javaws.jar:/usr/lib/jvm/java-6-sun-1.6.0.26/jre/lib/plugin.jar -Djava.class.path=/usr/lib/jvm/java-6-sun-1.6.0.26/jre/classes -Dsun.awt.warmup=true sun.plugin2.main.client.PluginMain write_pipe_name=/tmp/.com.sun.deploy.net.socket.1444.1704699298565364673.AF_UNIX

杀死进程后,Java 控制台将重新出现。还尝试了使用铬的重现步骤,除了僵尸进程的命令行不同之外,结果相同。

注意事项:

  • 当我关闭包含小程序的浏览器选项卡时,小程序处于正常状态,等待用户在 UI 上执行操作。
  • 在小程序重新启动之间完全关闭浏览器也可以解决问题,因为java 进程是浏览器进程的子进程。

有人有解释或解决方法吗?谢谢!

【问题讨论】:

  • 忘了说,当我关闭包含小程序的浏览器选项卡时,小程序处于正常状态,等待用户在 UI 上执行操作。
  • 只需将其添加到问题中,而不是作为评论 - 更好的可见性和连贯性。

标签: java console applet interpreter zombie-process


【解决方案1】:

有人有解释或解决方法吗?

要解决此问题,请在小程序查看器中进行测试。 (控制台与生产无关,除非设计有很大缺陷。)

至于解释,浏览器将在/如果感觉喜欢时结束 JRE/控制台。开发人员或小程序不能覆盖它。我注意到 FF 通常会在离开小程序页面后让 JRE 运行 30-60 秒(根据控制台消失的时间来判断)。

【讨论】:

  • 感谢您提供详细信息。我不知道我有 JDK 的 appletviewer 可执行文件,所以我可以用它重现我的小程序特定的错误。
【解决方案2】:

这不是一个僵尸,我想你的意思是暗示出了问题;这正是 Java 插件一直以来的工作方式。第一次需要它时,它会启动,这可能涉及打开控制台,具体取决于您的设置。然后它将继续运行,直到浏览器关闭。换句话说,这不是一个错误,而是一个特性。

一些浏览器包含一个用于打开 Java 控制台的菜单项;您可以根据需要使用它来重新打开它,而无需杀死或重新启动任何东西。

【讨论】:

  • “它将继续运行,直到浏览器关闭。” 不正确。看我的回答。
  • 我认为在 Windows 上有一个托盘图标允许重新打开 Java 控制台。有没有这样的东西,即使是非 GUI 的,可供 Linux 开发人员使用?
猜你喜欢
  • 1970-01-01
  • 2014-09-14
  • 1970-01-01
  • 1970-01-01
  • 2021-12-26
  • 1970-01-01
  • 2010-12-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多