为什么javaw.exe随机消失?

时间:2011-10-04 23:47:13

标签: java windows-xp windows-vista javafx-2 javaw

我有鬼问题。我已将Java包含在我的安装包中,因此我不必依赖已经拥有Java的用户。问题是javaw.exe偶尔会在我的包中消失!双击我的桌面快捷方式后,我收到一条消息,说它找不到javaw.exe,它会询问我是否要删除快捷方式。我无法确认它,但我认为它只会在PC重新启动时发生。但不是每次重启。这就是使它成为幽灵问题的原因。我无法追踪导致它的原因或确切发生的时间。

这在Vista上已多次出现,在XP Pro上出现过一次(到目前为止)。当它发生在XP专业版上时,我的快捷方式也发生了变化。 javaw.exe替换为java-rmi.exe。这可能是Windows'搜索解决方案...因为我没有找到任何模式,当.exe被删除时,我无法测试XP Home或Win 7上是否存在此问题。

快捷方式是:

"C:\Program Files\My Application\jre6\bin\javaw.exe" -jar "C:\Program Files\My Application\main.jar"

我的包中有3个使用Java的进程。它们都是同一个jar,区别在于,我将--argument添加到末尾,以便运行main.jar的不同部分。

  • 其中一个进程(在我的问题开始出现在Vista上后添加)在用户登录时启动,它处理系统托盘图标。它使用Java,Swing和JavaFX。
  • 一个从Start-up开始,以管理员身份在后台运行。这只使用Java。
  • 另一个是用户单击其中一个快捷方式时运行的GUI界面。这是一个Java和JavaFX,有一个罕见的Swing JDialog。

我正在使用Java 6和JavaFX 2 build 36或40(不知道如何确定我有哪一个)。我没有在XP专业版上安装任何病毒扫描程序。 Vista确实有Windows Defender,但没有别的。在Vista上我手动运行扫描程序,javaw.exe没有受到影响。我的隔离区域中没有任何项目,并且没有迹象表明Windows Defender已删除了javaw.exe。

编辑:我尝试将javaw.exe重命名为myjavaw.exe,但它又在Vista上发生了。 Windows Defenders Quarantined区域中没有项目。我认为可以排除病毒扫描程序。这一次,它发生在重启后。也许我的后台流程没有正确结束?这会导致Windows删除exe吗?

这是我的问题还是与Java或JavaFX有关,我该如何预防?

2 个答案:

答案 0 :(得分:1)

众所周知,Javaw.exe会引发一些病毒检查程序的误报; e.g。

http://java.com/en/download/faq/Trojan3.uj.xml

尝试查看病毒检查程序的隔离区/日志以查看可执行文件是否已显示在那里。如果有,则更新您的病毒检查程序(如果问题仍然存在),请与供应商联系。

答案 1 :(得分:1)

这已经解决了。

事实证明,我的卸载程序工作非常彻底。因为在卸载程序时我没有正确地做到这一点,卸载程序无法删除javaw.exe以及其他一些文件。然后它为下次重新启动创建了一个任务。但是我在下次重启之前重新安装了程序。然后它删除了新安装的程序的javaw.exe。

我现在正在执行卸载过程(结束使用javaw.exe的后台程序)。所以,这个问题已经停止了。

感谢您提出其他建议。他们非常有教育意义。