我记得 Unix(Sun Blade 和 Linux)确实可以立即启动 Java 应用程序,尤其是与 Windows 相比。这很酷,但现在我在批处理文件中每秒调用 Java 实用程序数百万次,启动时间是瓶颈。我发现专家交流有同样的问题并发现了选项,
但它被禁用了,他们没有答案。
答案1
欲了解更多信息,请参阅这篇 JQS 帮助文章
引用:
JQS 在 Windows XP 和 Windows 2000 操作系统中默认启用,并且Windows Vista 或 Windows 7 上不需要 JQS,因为它们都提供了自己的预加载机制。为实现快速启动,后台将运行一个名为 jqs.exe 的进程。Windows 重启后将加载 jqs.exe。有关如何禁用 JQS 和 jqs.exe 进程的说明如下。
据我所知,Oracle 认为 Vista 和 7 上不需要它。我认为不可能在这两个操作系统上启用它。有趣的是,帮助页面提供了有关如何关闭 JQS 的文档离开在 Windows 7/Vista 上,但不在。
至于 Vista/7 的预加载机制,遗憾的是,似乎没有办法指定要缓存的程序。一切都是自动完成的。
至于 ramdisk,正如 Journeyman Geek 提到的,有大量的选择例如AMD 虚拟硬盘或者Dataram 的 Ramdisk。
答案2
我找到了在任何操作系统上启用此功能的方法。
以下是步骤。请根据您的操作系统修改路径
cmd
以管理员身份打开cd C:\Program Files\Java\jre7\bin
jqs.exe -register
jqs.exe -enable