rmo*_*stl 17 java windows installation jvm
有没有办法防止Java安装例程(例如jdk-7u1-windows-i586.exe)将java.exe复制到C:\Windows\system32目录中?
我必须在客户端的笔记本电脑上安装我的软件,我不想打破已经安装在机器上的其他Java应用程序.换句话说,我想安装一个仅由我的软件使用的私有JRE.
到现在为止,我已将已安装的JRE从我的计算机复制到客户端的计算机上.
小智 8
我昨天发现Windows上的Java版本存在问题,因为您知道最近保持Java最新是至关重要的,尤其是位于Windows system32或syswow64文件夹中的Internet Explorer使用的JRE.
您可以在C:驱动器中搜索java,并查看它找到的各种可执行文件,以确定该情况是否适用于特定系统.
在做了一些研究之后,我发现当Java updater运行时,它只会更新安装在JAVA主目录中的文件,通常位于程序文件中,但它不会更新位于windows系统文件夹中的文件.因此,由于系统文件夹位于默认系统PATH中,因此Internet Explorer的使用将继续使用旧版本的JAVA文件(java.exe,javaw.exe,javaws.exe)
该解决方案是使用控制面板卸载Java的卸载程序功能,下载最新版本并重新安装.
干杯! 费尔南多
我最近升级到java 8并发现了这个问题,因为system32下的java版本仍然是java 7.它会阻止你运行版本,因为它抱怨注册表项
U:\>java -version
Error: Registry key 'Software\JavaSoft\Java Runtime Environment'\CurrentVersion'
has value '1.8', but '1.7' is required.
Error: could not find java.dll
Error: Could not find Java SE Runtime Environment.
Run Code Online (Sandbox Code Playgroud)
做到以下几点指出了我的罪魁祸首:
U:\>where java
C:\Windows\System32\java.exe
C:\Program Files\Java\jdk1.8.0_45\bin\java.exe
Run Code Online (Sandbox Code Playgroud)
我通过删除system32下的java'解决了'这个问题!我不确定这会带来什么后果.
您只需提供要在软件上使用的 JRE,然后:
JAVA_HOME在运行应用程序之前设置变量..\jre1.5.0_22\bin\java <your_java_main>)例如,这可以在 *.bat 文件中完成。
运行您创建的 *.bat 文件后,所有其他 java 版本都将被忽略,并且该计算机上安装或将安装的版本并不重要。
| 归档时间: |
|
| 查看次数: |
18521 次 |
| 最近记录: |