Windows 64位系统下Glassfish无法识别Java SE 6/10问题求助
解决GlassFish无法识别Java SE 6的问题
这种情况我之前帮同事排查过,核心问题要么是系统环境变量没配置到位,要么是GlassFish没正确绑定你的JDK路径。给你几个一步步的解决办法:
1. 先确认Java 6是否真的安装成功
- 打开新的命令提示符,分别执行:
如果这两个命令都报错,说明Java本身没被系统识别,先搞定这个基础问题。java -version javac -version - 找到你Java 6的安装根目录(比如
C:\Program Files\Java\jdk1.6.0_45),检查bin文件夹里是否存在javac.exe、java.exe这两个核心文件,确保安装包没损坏。
2. 配置系统环境变量(关键步骤)
Windows下系统识别Java全靠环境变量,别嫌麻烦,按步骤来:
- 右键「此电脑」→「属性」→「高级系统设置」→「环境变量」
- 在系统变量区域(不是用户变量):
- 新建变量
JAVA_HOME,值填你的Java 6安装根目录(比如C:\Program Files\Java\jdk1.6.0_45) - 编辑
Path变量,把%JAVA_HOME%\bin添加到最前面(注意和其他路径用分号;隔开)
- 新建变量
- 配置完成后必须重启命令提示符,再执行
java -version,此时应该能正常显示Java 6的版本信息了。
3. 强制让GlassFish指定Java 6路径
如果环境变量配置后还是报版本错误,那直接给GlassFish硬编码JDK路径:
- 找到GlassFish的安装目录,进入
glassfish\config文件夹 - 用记事本打开
asenv.bat文件,找到set AS_JAVA=这一行,把它修改为你的Java 6路径,比如:set AS_JAVA=C:\Program Files\Java\jdk1.6.0_45 - 保存文件后,打开新的命令提示符,重新执行
asadmin create-domain --adminport ...这类命令试试。
4. 排查64位系统的兼容性问题
你用的是Windows 64位系统,要确认你下载的Java SE 6是64位版本:
- 64位Java的安装目录默认在
C:\Program Files\Java\下,而32位的会在C:\Program Files (x86)\Java\下。如果装成了32位,可能会导致GlassFish识别异常,建议卸载后重新安装64位版本。
额外提醒
如果你同时装了Java SE 10,一定要确保JAVA_HOME和Path里优先指向Java 6——GlassFish对Java版本有严格要求,必须用指定的Java SE 6才能正常运行。
内容的提问来源于stack exchange,提问作者Yura




