32的第二次测试发现这种办法也是不对的,64位的都是成功的。
测试环境1:
window XP --> 32位系统,jre1.5,jdk1.7。
本人遇到的问题:
因为自己是用jdk1.7编译的可运行jar包,而客户需要维持一个jre1.5的环境,来继续使用其他的工具。于是直接安装上32位jre1.7(客户的机子有32位的),那么就会覆盖掉jre1.5,而这样是不可以发生的。
解决办法1:exe4j 来包装一下源程序。
解决办法2: ———>失败
只安装jdk1.7而不安装public jre1.7,然后使用一个批处理文件打开相应的可运行jar包。
批处理文件内容:
set BASE_DIR=%~dp0
%BASE_DIR:~0,2%
cd %BASE_DIR%
C:\java\jdk1.7.0_71\jre\bin\javaw -jar %1
其中C:\java\jdk1.7.0_71\jre\bin\j是你JDK的安装路径。
错误的尝试:
1 更改注册表
2 更改system32目录下的文件
3 使用低版本jre覆盖安装
4 更改环境变量
测试环境2:
win7 64位jre1.6 JDK1.7
遇到的问题:
同32位机器的差不多,这个解决办法比较方便,是装了一个32位的1.6,再装一个64位的1.7,这样就能运行了,这个我也不知道为什么。。是试出来的。