本部分介绍了与安装 Message Queue 版本 4.4 Update 1 相关的问题。
与 Message Queue 4.2 和 4.1 类似,Message Queue 4.4 是由相对较新的安装程序安装的,该安装程序还可安装并升级 Message Queue 所需的 Java Enterprise System (Java ES) 共享组件,例如 JDK、NSS 和 JavaHelp 等。
新 Message Queue 安装程序和旧 Java ES 安装程序(用于安装以前的 Message Queue 版本)不能共享同一个产品注册表。如果以 Message Queue 安装程序删除通过 Java ES 安装程序安装的 Message Queue 版本并随后安装 Message Queue 4.4,则 Java ES 产品注册表可能会处于不一致的状态。因此,如果运行 Java ES 卸载程序,它可能会误删 Message Queue 4.4 及其依赖的共享组件,即使这些内容并不是它安装的。
升级 Java ES 安装程序所安装的 Message Queue 软件的最佳方法如下所示。
使用 Java ES 卸载程序删除 Message Queue 及其共享组件。
使用 Message Queue 安装程序安装 Message Queue 4.4。
这些问题会影响所有平台上的安装。
“准备安装”屏幕将产品名称显示为 "mq" 而不是 Sun Java System Message Queue 4.3。(错误 6650841)
当安装程序正在安装 Message Queue 4.3 并显示“进度”屏幕时,“取消”按钮处于活动状态。如果此时选择“取消”按钮,则会导致安装不完整或中断。(错误 6595578)
安装程序“摘要”屏幕包含一些链接,单击这些链接时将启动日志或摘要页面查看器。如果使用窗口关闭按钮 "X" 关闭此查看器窗口,而不是使用标有“关闭”的按钮,则无法重新打开此查看器窗口。(错误 6587138)
解决方法:使用标有“关闭”的按钮关闭此窗口。
如果在执行了跳过注册步骤的无提示安装后以仅注册模式 (installer -r) 运行安装程序,则会导致注册失败,同时显示 "Premature end of file"(文件过早结束)错误。(错误 6767988)
在未安装 JDK 的计算机上运行 Message Queue 安装程序时,会显示以下错误消息:"Invalid root in registry key HKLM\SOFTWARE\JavaSoft\Java Runtime Environment\CurrentVersion"(注册表主键 HKLM\SOFTWARE\JavaSoft\Java Runtime Environment\CurrentVersion 中的根目录无效)。(错误 6764358)
解决方法:在运行安装程序之前安装 JDK。
在单击“准备安装”屏幕上的“安装”按钮之前,Message Queue 安装程序已创建了 mqInstallHome 目录。(错误 6595590)
在 Windows 上安装 Message Queue 时,请注意以下限制。
Windows 平台上的 Message Queue 4.3 安装目录结构不同于以前发行版的目录结构。请参见《Sun Java System Message Queue 4.3 Installation Guide》中的“Installed Directory Structure”。
安装程序没有在“开始”>“程序”菜单中添加 Message Queue 条目。(错误 6567258)
解决方法:要启动管理控制台,请使用《Sun GlassFish Message Queue 4.4 Administration Guide》中的“Starting the Administration Console”所示的命令行。
安装程序没有将 IMQ_HOME\mq\bin 目录添加到 PATH 环境变量中。(错误 6567197)
解决方法:在调用 Message Queue 实用程序 (IMQ_HOME\mq\bin\ command) 时,用户需要将此条目添加到其 PATH 环境变量中,或者提供完整的路径名。
安装程序没有将条目添加到 Windows 注册表中,以表明安装了 Message Queue。(错误 6586389)
安装程序没有将 Message Queue 代理添加为 Windows 服务。
解决方法:使用 imqsvcadm 命令手动将 Message Queue 代理添加为 Windows 服务。
如果没有安装 JDK,安装程序会抛出以下错误:"Invalid root in registry key HKLM\\SOFTWARE\\JavaSoft\\Java Runtime Environment\\CurrentVersion"(注册表主键 HKLM\\SOFTWARE\\JavaSoft\\Java Runtime Environment\\CurrentVersion 中的根目录无效)。(错误 6764358)
解决方法:如果出现此错误,则安装 JDK,然后继续操作。
在无提示模式下使用应答文件运行安装程序时,该程序将立即返回。确实执行了安装;但用户无法知道无提示安装实际上是何时完成的。(错误 6586560)
安装程序在 C:\ 上安装 Message Queue,即使操作系统安装在其他驱动器上也是如此。(错误 6673511)
对于 Windows 上的安装和卸载,用户无法运行 .bat 文件,也无法使用 Windows 控制面板中的“添加/删除程序”进行卸载。(错误 6673417)
在 Windows Vista 上,无法在 C:\Program Files 下安装 Message Queue,除非以管理员身份从命令提示符进行安装。(错误 6701661)
解决方法:以管理员身份通过命令提示符进行安装:
1.“开始”->“程序”->“附件”->“命令提示符”。
2. 右键单击“命令提示符”。
3. 选择“以管理员身份运行”。
4. 转到 Message Queue 4.2 安装映像所在的目录。
5. 运行 installer.vbs。
在模拟运行模式下运行卸载程序 (uninstaller -n) 时,它将错误地执行卸载。(错误 6719051)
解决方法:使用以下命令执行无提示安装:
uninstaller -s
安装程序主目录页上的 "Install Home" 字符串没有进行本地化。(错误 6592491)
基于 Zip 的 Message Queue 卸载程序在 Windows 2003 上挂起。(错误 6764370)
解决方法:手动删除 mqInstallHome 目录。
在模拟运行模式 (installer –n) 下运行安装程序时,“摘要”屏幕会显示一些错误消息,并且还会显示“不完整”安装状态。这是不正确的并且会误导用户;模拟运行不会在系统上安装任何内容;它仅创建一个可随后用于执行无提示安装的应答文件。(错误 6594351)
在无提示安装模式下使用应答文件运行安装程序 (installer -a filename -s) 时,该程序不执行 Sun Connection 注册。(错误 6710268)
以下问题会影响 Linux 平台上的安装:
在 Red Hat Linux 5 上,运行 C 客户端应用程序所需的 compat-libstdc++ 库未包含在 Message Queue 分发包中,因此 Message Queue 安装程序未对其进行安装。如果要开发并运行 C 客户端,则需要手动安装此库。
通常,在您所用的 Linux 版本的安装介质中,可以找到 compat-libstdc++ rpm。可使用以下命令对其进行安装:
rpm -ivh compat-libstdc++-x-x.x.x.x..rpm
其中 x 表示版本号。
要检查是否已成功安装该库,请使用以下命令:
rpm -qa | grep compat-libstdc++
在 Red Hat Linux 5 上,C 客户端可能失败,并且出现 PR_LOAD_LIBRARY_ERROR 错误(错误 6885978)
在 Red Hat Linux 5 上,C 客户端可能失败,并且显示与以下消息类似的消息:
"Preparing for NSS initialization ..." "Initializing NSS ..." "Could not connect to broker because 'PR_LOAD_LIBRARY_ERROR' (-5977)." producer(): Error: PR_LOAD_LIBRARY_ERROR |
此错误是由无法访问 NSS/NSPR 库而导致的。
要解决此问题,请将 LD_LIBRARY_PATH 环境变量设置为包括 NSS/NSPR 库的路径,即 IMQ_HOME/nss/lib。
在“JDK 选择”面板上,滚动列表仅显示一项。这使得在列表中选择其他 JDK 变得非常困难。(错误 6584735)
如果 JDK 是最新的,并且用户在“JDK 选择”屏幕上选择了“安装默认 JDK”,则安装程序仍会尝试安装 JDK,并报告无法安装软件包。尽管出现此问题,但安装已成功完成。(错误 6581310)
如果当前安装的 JDK 版本比 JDK 1.5.0_15(Message Queue 安装程序通常安装的版本)高,Message Queue 卸载程序将找不到默认的 IMQ_JAVAHOME 目录并返回错误。(错误 6673415)
解决方法:在运行 Message Queue 卸载程序之前,按如下所述手动安装 JDK 1.5。
# cd installImage/Product/UNIX/LINUX/X86/2.4/Packages
# rpm -i --force jdk-1.5.0_15–linux- arch.rpm
其中 arch 为 i586 或 amd64。
在模拟运行模式 (installer –n) 下运行安装程序时,“摘要”屏幕会显示一些错误消息,并且还会显示“不完整”安装状态。这是不正确的并且会误导用户;模拟运行不会在系统上安装任何内容;它仅创建一个可随后用于执行无提示安装的应答文件。(错误 6594351)
安装程序未明确显示 Message Queue 版本信息。(错误 6586507)
在 Solaris 平台上,请参见下表以确定安装程序显示的 Message Queue 版本。
表 1–13 版本字符串转换
Solaris OS 上的安装程序显示的版本 |
对应的 Message Queue 发行版 |
---|---|
4.4.1.0 |
4.4 Update 1 |
4.4.0.0 |
4.4 |
4.3.0.0 |
4.3 |
4.2.0.0 |
4.2 |
4.1.0.2 |
4.1 Patch 2 |
4.1.0.1 |
4.1 Patch 1 |
4.1.0.0 |
4.1 |
3.7.2.1 |
3.7 UR2 Patch 1 |
3.7.0.2 |
3.7 UR2 |
3.7.0.1 |
3.7 UR1 |
3.6.0.0 |
3.6 |
3.6.0.4 |
3.6 SP4 |
3.6.0.3 |
3.6 SP3 |
3.6.0.2 |
3.6 SP2 |
3.6.0.1 |
3.6 SP1 |
对于 3.6 SP4 修补程序发行版(如 3.6 SP4 Patch 1),安装程序显示的发行版字符串保持不变。您需要运行 imqbrokerd -version 命令以确定确切的版本。
在 Linux 平台上,安装程序显示的版本号采用以下格式。
majorReleaseNumber.minorReleaseNumber-someNumber
例如,3.7–22。它仅告诉我们这是 3.7 发行版之一,但没有指出具体的版本。要确定安装的 Message Queue 版本,请运行以下命令:
imqbrokerd -version。
以下问题与本地化问题有关。
在非英语语言环境中以文本模式运行安装程序 (installer –t) 时,多字节字符将显示为乱码。(错误 6586923)
在安装程序“进度”屏幕上,进度栏显示奇怪的字符。在非英语语言环境中,工具提示是固定编码的。(错误 6591632)
无论在哪种语言环境中运行安装程序,安装程序的“许可证”屏幕都会显示英语许可证文本。(错误 6592399)
解决方法:要访问本地化的许可证文件,请查看 LICENSE_MULTILANGUAGE.pdf 文件。
未本地化安装程序使用帮助文本。(错误 6592493)
安装程序摘要 HTML 页上显示的字符串 "None" 是用英语固定编码的。(错误 6593089)
在德语语言环境中运行安装程序时,“欢迎”屏幕未显示在其他语言环境中看到的完整文本。(错误 6592666)
安装程序“安装主目录”屏幕上显示的字符串 "Install Home" 没有进行本地化。即使在非英语语言环境中运行安装程序,也会以英语显示该字符串。(错误 6592491)
在文本模式下运行安装程序 (installer –t) 时,无论在哪种语言环境中运行安装程序,都会使用英语响应选项 "Yes" 和 "No"。(错误 6593230)
安装程序“JDK 选择”屏幕上的浏览器按钮工具提示是使用英语固定编码的。(错误 6593085)