今天在 Oracle Enterprise Linux 5.6 上安裝 GoldenGate Director ,安裝完 JDK 1.6 和 weblogic server 10.3.50 後安裝 GoldenGate Director Server 11.2.1
的時候,而且是進度條結束的時候報了一個 “unable to run run-cds-tool scripts file” 錯誤,如所示:
一般情況下,Oracle 軟體的安裝在相應目錄下都會有日誌輸出,在我的 GoldenGate 安裝目錄 /weblogic/GoldenGate/GG_Directorgg-director
裡面找到了這個日誌,日誌內容如下:
[oracle@prod GG_Directorgg-director]$ cd/weblogic/GoldenGate/GG_Directorgg-director
[oracle@prod GG_Directorgg-director]$ ls*.log
cds-tool-error.log cds-tool.log
[oracle@prod GG_Directorgg-director]$ morecds-tool-error.log
Exception in thread "main"java.lang.ClassFormatError: oracle.jdbc.OracleDriver (unrecognized class fileversion)
atjava.lang.VMClassLoader.defineClass(libgcj.so.7rh)
atjava.lang.ClassLoader.defineClass(libgcj.so.7rh)
atjava.security.SecureClassLoader.defineClass(libgcj.so.7rh)
atjava.net.URLClassLoader.findClass(libgcj.so.7rh)
atjava.lang.ClassLoader.loadClass(libgcj.so.7rh)
atjava.lang.ClassLoader.loadClass(libgcj.so.7rh)
atcom.goldengate.gdsc.util.ConfigDirectorServer.startDBSetup(ConfigDirectorServer.java:659)
atcom.goldengate.gdsc.util.ConfigDirectorServer.main(ConfigDirectorServer.java:922)
unrecognized class fileversion
錯誤資訊已經很明確,很可能是 java 版本問題,因為 Oracle Linux 5.6 內建的 jdk 版本為 1.4.2,所以在安裝 weblogic 之前,要求先安裝 jdk 1.6
可是我明明已經安裝了 1.6 版本的 jdk,應該是符合安裝要求的,這裡為何報錯呢?
回顧一下 jdk 的安裝筆記,錯誤的細節就出來了:
[root@prod weblogic]#./jdk-6u43-linux-i586.bin
[root@prod weblogic]# mkdir -p/usr/local/java
[root@prod weblogic]# cp -Rf ./jdk1.6.0_43/usr/local/java
[root@prod weblogic]# chmod -R 777/usr/local/java
[root@prod weblogic]# vi /etc/profile
exportJAVA_HOME=/usr/local/java/jdk1.6.0_43
exportPATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
[root@prod weblogic]# exportJAVA_HOME=/usr/local/java/jdk1.6.0_43
[root@prod weblogic]# exportPATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
[root@prod bin]# source /etc/profile
[root@prod bin]# java -version
java version "1.6.0_43"
Java(TM) SE Runtime Environment (build1.6.0_43-b01)
Java HotSpot(TM) Server VM (build20.14-b01, mixed mode)
我的 jdk 1.6 是用 root 安裝的,而安裝 weblogic 和 goldengate director 都是用 oracle 使用者安裝的,oracle 的環境變數沒有設定
1.6 版本的 JDK ,java -version 查看結果果然如我我所料。
[oracle@prod ~]$ java -version
java version "1.4.2"
gij (GNU libgcj) version 4.1.2 20080704(Red Hat 4.1.2-50)
Copyright (C) 2006 Free SoftwareFoundation, Inc.
This is free software; see the source forcopying conditions. There is NO
warranty; not even for MERCHANTABILITY orFITNESS FOR A PARTICULAR PURPOSE.
果斷修改 Oracle 使用者的環境變數
[oracle@prod ~]$ vi .bash_profile
export JAVA_HOME=/usr/local/java/jdk1.6.0_43
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib
[oracle@prod ~]$ source .bash_profile
然後再刪除失敗的安裝檔案,重新安裝便順理安裝通過。
轉載請註明作者出處及原文連結:
http://blog.csdn.net/xiangsir/article/details/8703673