java ee安装在OSX上失败

时间:2014-01-10 03:04:52

标签: java macos java-ee java-7

我正在尝试升级到JDK1.7,但不断收到以下错误:

me$ sh java_ee_sdk-7-jdk7-macosx-x64-ml.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=0x0000000122d9a3f9, pid=1338, tid=50951
#
# 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  0x0000000122d9a3f9
#
# 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/g6/prk7w23x19542y4p1p95phg00000gq/T//hs_err_pid1338.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.010914202419/install/bin/engine-wrapper: line 139:  1338 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}

我已经检查了上一个问题的答案:

Java EE installer crashing on Mac OS X Mavericks

请注意,该问题已被关闭,因此我无法发表评论以获取更多信息,因此我不得不发帖重复。

但是,@ Alexander Zeitler建议的解决方案不起作用,他引用的帖子不再可用。如果我尝试他的解决方案,我会得到以下结果:

me $ sh java_ee_sdk-7-jdk7-macosx-x64-ml.sh -a answer_file -l / Users / me / tmp -s 提供的静默安装文件无法访问。请使用适当的状态文件重新运行此程序。

我查看了sh文件,找出了正确的参数格式。我想Oracle已经更新了sh文件,因为之前的问题和答案。无论如何,我试试

$me sh java_ee_sdk-7-jdk7-macosx-x64-ml.sh ~/tmp/answer

我得到与上面相同的错误。

尝试通过sudo执行会导致同样的错误。

有没有人对发生的事情有任何想法?

1 个答案:

答案 0 :(得分:1)

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

我在这里找到答案: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 installer crashing on Mac OS X Mavericks

希望能帮助别人!