gpt4 book ai didi

java - 如何自动找到包含jvm的目录来启动jar?

转载 作者:太空宇宙 更新时间:2023-11-04 14:25:02 24 4
gpt4 key购买 nike

我想向一些人发送一个 jar 来测试我的软件,但我需要在 32 位 jvm 上启动该 jar。如何自动验证 32 位 jvm 是否已安装并确保使用正确的 jvm 启动 jar?
我想避免要求人们手动完成所有工作,因为他们不是技术人员。
你能帮我吗?


******** 解决方案 ******
我发现了两种类型的解决方案,我想与您分享:1)我发现C:\Windows\SysWoW64和C:\Windows\system32包含java.exe的最后安装版本。因此,人们可以编写一个 .bat 来验证哪个是用于启动代码的 32 位 jvm2) 使用java code described in an other post用于生成正确的 .bat

最佳答案

据我所知,没有简单的方法可以实现这一目标。第一个猜测当然是%JAVA_HOME%。但很可能不是“非技术人员”的PC上设置的,所以我们跳过它。

我相信 Windows 注册表有一种可行的方法。

如果 Java 是通过安装程序安装的(不仅仅是手动解压),它将有一些注册表项。在我的 PC 上,我找到了指向我的 Java 安装的键 HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\1.8.0_25\JavaHome 。附近还有 JDK key 。同一台计算机上可以安装多个版本,因此最好收集所有这些 key (HKLM 和 HKCU 中的 jre 和 jdk)并尝试找到指向 32 位版本的 key 。如果一个人的 PC 上有非 Oracle Java,那么注册表项很可能有另一条路径(如果存在的话)。

当你发现java安装时,有很多方法可以检查它是32位还是64位。看看this SO question

关于java - 如何自动找到包含jvm的目录来启动jar?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26776452/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com