zoukankan      html  css  js  c++  java
  • OMSPatcher命令报错Fail with Error Code 1 and Message: Unsupported major.minor version 51.0

    OMSPatcher命令报错Fail with Error Code 1 and Message: Unsupported major.minor version 51.0

     

    前言

    最近安装OEM 13c,准备对OMS打补丁的时候,检查OMSPatcher版本的时候,报错如下:

    [oracle@oem13c ~]$ omspatcher version
    Exception in thread "main" java.lang.UnsupportedClassVersionError: oracle/opatch/opatchsdk/OPatchException : Unsupported major.minor version 51.0
            at java.lang.ClassLoader.defineClass1(Native Method)
            at java.lang.ClassLoader.defineClassCond(ClassLoader.java:637)
            at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
            at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
            at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
            at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
            at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
            at java.security.AccessController.doPrivileged(Native Method)
            at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
            at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
            at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    Could not find the main class: oracle/opatchauto/oms/OPatchAuto.  Program will exit.
    
    OMSPatcher failed with error code 1

    反复安装卸载的JDK

    随后,我就直接问度娘了。

    找到这么一篇文章,报错和我这个比较类似。

    里边提到了这么一个对应关系,顿时我就那个高兴啊!

    你瞧瞧你瞧瞧,简直都领你到家门口了,只要自己踏进去问题就迎刃而解了啊。

    然后我就看了下当前java的版本,

    [oracle@oem13c ~]$ java -version
    OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x00007fb607c00000, 138412032, 2097152, 0) failed; error='Cannot allocate memory' (errno=12)
    java version "1.7.0_45"
    OpenJDK Runtime Environment (rhel-2.4.3.3.0.1.el6-x86_64 u45-b15)
    OpenJDK 64-Bit Server VM (build 24.45-b08, mixed mode)

    ??????

    这版本符合要求的啊!!!

    可能是后边的小版本号不符合吧?正好前段时间公司同事托我用Oracle账号下载了JDK8的版本,我就升下级吧。

    于是,

    [root@oem13c soft]# rpm -ivh jdk-8u251-linux-x64.rpm 
    warning: jdk-8u251-linux-x64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
    Preparing...                ########################################### [100%]
       1:jdk1.8                 ########################################### [100%]
    Unpacking JAR files...
            tools.jar...
            plugin.jar...
            javaws.jar...
            deploy.jar...
            rt.jar...
            jsse.jar...
            charsets.jar...
            localedata.jar...
    [root@oem13c soft]# java -version
    java version "1.8.0_251"
    Java(TM) SE Runtime Environment (build 1.8.0_251-b08)
    Java HotSpot(TM) 64-Bit Server VM (build 25.251-b08, mixed mode)

    然鹅,

    还是报错。

    又想,文章说是说要7以上,兴许是8又太新了。

    于是又跑官网下载了jdk-7u80-linux-x64.rpm,回退8的,安装7的。

    还是不行!!!

    后来又反复试验,甚至升级OMSPatcher版本,也是一样。

    转折又转折

    还是又mos上搜索一下吧,之前搜过了没搜出啥。

    这次我直接把一整行报错拿出来搜。

    天呐!!之前搜基本都是不对边的DOC,终于搜出来了。

    别急,先看看能不能解决(Doc ID 2175778.1)。

    把环境变量ORACLE_HOME的值改成oms的home路径。

    [oracle@oem13c ~]$ export ORACLE_HOME=/u01/app/oem13c/middleware
    [oracle@oem13c ~]$ /u01/app/oem13c/middleware/OMSPatcher/omspatcher version
    OMSPatcher Version: 13.8.0.0.3
    OPlan Version: 12.1.0.2.2
    OsysModel build: Mon Dec 21 18:31:52 PST 2015
    
    OMSPatcher succeeded.

    终于成功了,果然Oracle自家产品的问题,还是mos靠谱点。

    不对!!!那我资料库也是同一台机,ORACLE_HOME环境变量不能改啊!!!

    后续

    EM 13c: Upgrading OPatch to 13.9.x in the Enterprise Manager 13c Cloud Control Middleware Home Fails with Error: Unsupported major.minor version 51.0 (Doc ID 2221863.1)中指出,

    JDK版本是会导致这个错误的,这个在前边已经明确。不过文中指出,其实安装好OMS后,已经自带了jdk了。

    export MIDDLEWARE_HOME=<MIDDLEWARE_HOME>
    export JAVA_HOME=<MIDDLEWARE_HOME>/oracle_common/jdk
    export PATH=$JAVA_HOME/bin:$PATH

    注意,PATH变量中,$JAVA_HOME/bin一定要放在$PATH前边,不然java会优先使用/usr/bin/java。

    这几个环境变量配置作为OEM 13c的安装规范吧。

  • 相关阅读:
    iOS 学习
    iOS 学习
    textField和textView限制输入条件
    FMDB的使用
    Xcode7以后 使用空模板
    MJPhotoBrowser BUG修复
    获得通讯录的访问权
    正则运算校验手机号码
    项目中生产模式和开发模式的切换
    自定义的进度条
  • 原文地址:https://www.cnblogs.com/PiscesCanon/p/13402149.html
Copyright © 2011-2022 走看看