Java EE安装程序在Mac OS X Mavericks上崩溃

试图在OS 10.9 Mavericks上安装Java EE 7 / Glassfish 4并且每次都崩溃。 我已经尝试安装Apple JDK和Oracle JDK,但都不起作用。 有没有人碰到这个? 我记得安装在10.8上它工作得很好。 谢谢!

环境变量:

$ echo $ JAVA_HOME

/Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents/Home

输出:

$ chmod +x java_ee_sdk-7-jdk7-macosx-x64.sh $ ./java_ee_sdk-7-jdk7-macosx-x64.sh Extracting the installer archive... Extracting the installer runtime... Extracting the installer resources... Extracting the installer metadata... Welcome to GlassFish installer Using the user defined JAVA_HOME : /Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents/Home Entering setup... SwixML 1.5 (#144) # # A fatal error has been detected by the Java Runtime Environment: # # SIGSEGV (0xb) at pc=0x0000000119956af9, pid=5178, tid=50183 # # JRE version: Java(TM) SE Runtime Environment (7.0_45-b18) (build 1.7.0_45-b18) # Java VM: Java HotSpot(TM) 64-Bit Server VM (24.45-b08 mixed mode bsd-amd64 compressed oops) # Problematic frame: # C 0x0000000119956af9 # # Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again # # An error report file with more information is saved as: # /var/folders/4t/7dky_l096m1fdl5gncg_w__80000gn/T//hs_err_pid5178.log # # If you would like to submit a bug report, please visit: # http://bugreport.sun.com/bugreport/crash.jsp # The crash happened outside the Java Virtual Machine in native code. # See problematic frame for where to report the bug. # /tmp/install.111513141256/install/bin/engine-wrapper: line 139: 5178 Abort trap: 6 ${JAVA_HOME}/bin/java ${JAVA_OPTIONS} -Dinstall.engine=${theInstallEngine} -Dinstaller.resources.url=${MEDIALOC}/ -Ddefault.resources.url=file:${INSTALL_HOME}/lib/resources/ -classpath ${theCP} -Dsims.native-file-dir=${INSTALL_HOME}/lib org.openinstaller.core.EngineBootstrap ${INSTALLPROPS} 

只是一个疯狂的猜测,因为我与另一个软件有类似的问题:

尝试使用sudo运行安装

 sudo [your installer] 

我知道这是一个老问题,但我遇到了同样的问题,并认为我的解决方案可能会在将来帮助其他人。

我在这里找到答案: https : //apple.stackexchange.com/a/115708/89930

总而言之,您需要设置几个变量,然后以静默方式运行安装程序。

首先创建一个名为“silent_install_answer_file”的新文本文件,然后添加以下内容,根据需要更新值:

 ClusteredInstance.Configuration.CLUSTER_NAME=c1 ClusteredInstance.Configuration.CREATE_CLUSTER=false ClusteredInstance.Configuration.DOMAIN_NAME=domain1 ClusteredInstance.Configuration.INSTANCE_NAME=instance1 ClusteredInstance.Configuration.SERVER_ADMIN_PORT=4848 ClusteredInstance.Configuration.SERVER_HOST_NAME=localhost ConfigType.Option.CREATE_CLUSTEREDINSTANCE=CREATE_CLUSTEREDINSTANCE ConfigType.Option.CREATE_DOMAIN=CREATE_DOMAIN ConfigType.Option.CREATE_STANDALONEINSTANCE=CREATE_STANDALONEINSTANCE ConfigType.Option.NO_CONFIGURATION=NO_CONFIGURATION Domain.Configuration.ADMIN_PASSWORD=password Domain.Configuration.ADMIN_PASSWORD_REENTER=password Domain.Configuration.ADMIN_PORT=4848 Domain.Configuration.ADMIN_USER=admin Domain.Configuration.CREATE_SERVICE=false Domain.Configuration.DOMAIN_NAME=domain1 Domain.Configuration.HTTP_PORT=8080 Domain.Configuration.SERVICE_NAME=domain1Service Domain.Configuration.START_SERVER=false InstallHome.directory.INSTALL_HOME=/usr/local/glassfish4 InstallType.Option.CONFIG_ONLY=CONFIG_ONLY InstallType.Option.INSTALL_AND_CONFIG=INSTALL_AND_CONFIG InstallType.Option.INSTALL_ONLY=INSTALL_ONLY InstallUserType.Option.ADVANCED_USER=ADVANCED_USER InstallUserType.Option.BASIC_USER=BASIC_USER JDKSelection.directory.HIDDEN_JDK= JDKSelection.directory.JDK_FROM_LIST_CHOICE=false JDKSelection.directory.JDK_LIST= JDKSelection.directory.JDK_TYPE_IN= JDKSelection.directory.JDK_TYPED_IN_CHOICE=false RegistrationOptions.regoptions.CREATE_NEWACCT=CREATE_NEWACCT RegistrationOptions.regoptions.DUMMY_PROP= RegistrationOptions.regoptions.SKIP_REGISTRATION=SKIP_REGISTRATION RegistrationOptions.regoptions.USE_EXISTINGACCT=USE_EXISTINGACCT RegistrationOptions.regoptions.USERNAME= RegistrationOptions.regoptions.USERPASSWORD= SOAccountCreation.accountinfo.COMPANYNAME= SOAccountCreation.accountinfo.COUNTRY_DROP_DOWN= SOAccountCreation.accountinfo.COUNTRY= SOAccountCreation.accountinfo.EMAIL= SOAccountCreation.accountinfo.FIRSTNAME= SOAccountCreation.accountinfo.LASTNAME= SOAccountCreation.accountinfo.PASSWORD= SOAccountCreation.accountinfo.REENTERPASSWORD= StandaloneInstance.Configuration.INSTANCE_NAME=instance1 StandaloneInstance.Configuration.SERVER_ADMIN_PORT=4848 StandaloneInstance.Configuration.SERVER_HOST_NAME=localhost UpdateTool.Configuration.ALLOW_UPDATE_CHECK=true UpdateTool.Configuration.BOOTSTRAP_UPDATETOOL=true UpdateTool.Configuration.PROXY_HOST= UpdateTool.Configuration.PROXY_PORT= 

检查是否正确设置了JAVA_HOME环境变量:

export JAVA_HOME="$(/usr/libexec/java_home)"

创建/Users/username/temp目录(如果它尚不存在)( mkdir /Users/username/temp )。

最后,使用sudo运行安装程序。 您可能还需要同时设置DISPLAY变量:

$ sudo DISPLAY=:0 ./java_ee_sdk-7-jdk7-macosx-x64.sh -a silent_install_answer_file -l /Users/username/temp -s

安装程序可能需要几分钟才能完成,因为它在静默模式下运行,在此期间您可能看不到多少输出,所以要耐心等待。

如果您在无提示模式下运行安装程序时遇到问题,可能会对GlassFish安装程序文档有所帮助: https : //glassfish.java.net/docs/4.0/installation-guide.pdf

一个看似相关的问题: java ee安装在OSX上失败

希望有人帮助!