java - 为什么 javaw.exe 随机消失?

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

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

这在 Vista 上发生过多次,在 XP Pro 上发生过一次(到目前为止)。当它发生在 XP Pro 上时,我的快捷方式也被更改了。 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。
  • 一个在启动时启动并以管理员身份在后台运行。这仅使用 Java。
  • 另一个是当用户单击其中一个快捷方式时运行的 GUI 界面。这是带有罕见的 Swing JDialog 的 Java 和 JavaFX。

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

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

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

最佳答案

已知 Javaw.exe 会触发某些病毒检查程序的误报;例如

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

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

关于java - 为什么 javaw.exe 随机消失?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7655275/

相关文章:

java - 打开新的 native 应用程序时保持全屏

java - 如何使用 Spring RestTemplate 在 POST 中传递数组?

java - 在 Win XP 上使用 BufferedReader 双换行,但在其他操作系统上没有...相同的代码

java - 带有 if 语句的嵌套循环的时间复杂度 O(N) : O(N^4)?

c# - 使用 .NET 2.0 在 XP 上运行 .NET 4.5 程序

c# - Windows Form应用程序在InitializeComponent上崩溃

c++ - 在 Windows Vista 上将 MSADO15.DLL 和 C++ 与 MinGW/GCC 结合使用

c++ - 从 DLL 向 Vista 中另一个进程的窗口发送消息

encryption - 跨机器加密/解密是禁忌

java - 在 JSR-310 中计算修改后的儒略日