如何为GlassFish域指定JDK?

edw*_*yte 37 java glassfish

我安装了GlassFish 2.1.1.我安装了1.5和1.6 JDK.即使我的JAVA_HOME变量设置为1.5版本(以及"java -version"和"javac -version"显示1.5),每当我启动我的glassfish域时,它总是在日志顶部指出其使用版本1.6.我怎么能覆盖这个呢?

Starting Domain domain2, please wait.
04-May-2012 08:38:47 com.sun.enterprise.admin.servermgmt.launch.ASLauncher buildCommand
INFO:
C:/Dev/jdk/1.6/1.6.0_19\bin\java
Run Code Online (Sandbox Code Playgroud)

dbf*_*dbf 71

在这里,您可以找到如何为Glassfish设置JDK的路径:http://www.devdaily.com/blog/post/java/fixing-glassfish-jdk-path-problem-solved

校验

glassfish\config\asenv.bat
Run Code Online (Sandbox Code Playgroud)

配置java路径的位置

REM set AS_JAVA=C:\Program Files\Java\jdk1.6.0_04\jre/..
set AS_JAVA=C:\Program Files\Java\jdk1.5.0_16
Run Code Online (Sandbox Code Playgroud)

  • 在 glassfish 5.0.0 中没有设置这样的 var AS_JAVA。但是我将它添加到 asenv.bat 文件的末尾。那解决了我的问题 (2认同)

edw*_*yte 11

添加dbf链接中的实际内容,以便将解决方案保持在stackoverflow中.

事实证明,当我第一次在我的Windows系统上安装Glassfish时,我安装了JDK 6,最近我不得不降级到JDK 5来为另一个项目编译一些代码.

显然,当安装Glassfish时,它会硬编码对JDK位置的引用,因此为了解决这个问题,我最终不得不编辑一个名为asenv.bat的文件.简而言之,我编辑了这个文件:

C:\glassfish\config\asenv.bat:
Run Code Online (Sandbox Code Playgroud)

我注释掉了对JDK 6的引用并添加了对JDK 5的新引用,如下所示:

REM set AS_JAVA=C:\Program Files\Java\jdk1.6.0_04\jre/..
set AS_JAVA=C:\Program Files\Java\jdk1.5.0_16
Run Code Online (Sandbox Code Playgroud)

虽然路径似乎不区分大小写,但由于替换路径的大小写不正确,我花了几个小时调试JMS目标对象周围的问题.


fus*_*n27 8

我正在使用Mac,OSX 10.9.我最近不得不将某些VPN软件的JDK更新为1.7.我正在使用的应用程序在JDK 1.6上运行,因此GlassFish必须与JDK 1.6一起运行.花了一分钟来解决这个问题,但这就是我的方式.顺便说一下,我使用NetBeans IDE.

  1. 我的GlssFish配置文件

    /Applications/NetBeans/glassfish-3.1.2.2/glassfish/config/asenv.conf

  2. JDK 1.6的路径

    /System/Library/Frameworks/JavaVM.framework/Versions/1.6/Home

  3. 我在asenv.conf文件的底部添加了以下行

    AS_JAVA=/System/Library/Frameworks/JavaVM.framework/Versions/1.6/Home


Per*_*erg 6

根据GF管理指南:

对于有效的 JVM 安装,将按以下顺序检查位置:domain.xml(java-config 中的 java-home) b. asenv.conf (设置 AS_JAVA="java home 的路径")

我必须添加两个设置才能使其工作。否则 'asadmin stop-domain domain1' 将不起作用。我猜GF使用了一个。和 asadmin 使用 b。

(在 Windows 上:b. asenv.bat)


And*_*Mac 5

与Glassfish 4.0和几个JDK安装类似的错误:

SEVERE: GlassFish requires JDK 7, you are using JDK version 6.
Run Code Online (Sandbox Code Playgroud)

默认情况下,"C:\ glassfish\config\asenv.bat"中没有AS_JAVA引用.手动添加后

set AS_JAVA=C:\Program Files\Java\jdk1.7.0_25 
Run Code Online (Sandbox Code Playgroud)

有用.


Dev*_*Dio 5

添加新鲜的 glassfish 4.1 后,在我的 IntelliJ 17 中遇到了同样的问题。

我已经设置了我的JAVA_HOME环境变量如下:

echo %JAVA_HOME%
C:\Java\jdk1.8.0_121\
Run Code Online (Sandbox Code Playgroud)

然后打开 %GLASSFISH_HOME%\glassfish\config\asenv.bat

并刚刚添加和文件末尾:

set AS_JAVA=%JAVA_HOME%

然后 Glassfish 开始没有问题。