有一个别人的工程项目,在jdk1.6下能很好的运行,换成jdk1.5就会报错,说找不到某些类。这是问什么呢?
谢谢!

解决方案 »

  1.   

    jdk1.5和jdk1.6肯定是有区别的,区别有可能就在于jdk1.6增加了一些封装好的类,而这些类在jdk1.5中没有。
    LZ说的问题肯定也就是你的工程使用了jdk1.6新增的类,所以自然jdk1.5也就找不到这些类。
    解决的办法由两个,一个是继续使用jdk1.6,二是自己修改jdk1.6中新增加类的功能。
      

  2.   

    因为jdk1.5里缺少某些jdk1.6独有的类!
      

  3.   

    谢谢回答
    我忘了说清楚
    找不到的那个类,其实在工程的lib有,不知道jdk1.5为什么会找不到。
    与他们工作原理有关么?
      

  4.   


    即使找到了,1.5的JVM认不出来
      

  5.   

    这个很正常的。这些东西一般都是向下兼容的,不会向上兼容。JDK里面有些东西是JDK1.5里面没有的。而且,就算你用JDK1.5做的东西,放到JDK1.6里面编译了之后。再放回JDK1.5里面去运行,也不一定能运行起来。就目前来说,JDK1.6还不稳定。我曾尝试用MyEclipse+JDK1.6+Tomcat6.0做开发,结果总出现一些莫名其妙的错误
      

  6.   

    出问题应该是你自己的问题,而不是JDK的问题楼主的说,工程的lib里面有,有可能是没有找到这个目录,看一下环境变量的问题如果你是WEB工程,就看一下服务器在运行时有没有加载这个lib下面的类了(一般会因为路径问题影响加载~)
      

  7.   

    2008-5-7 14:22:51 com.sun.jbi.framework.ComponentFramework startComponent
    信息: JBIFW1146: Binding sun-file-binding has been started.
    2008-5-7 14:22:51 com.sun.jbi.httpsoapbc.SoapDenormalizer <init>
    严重: Unable to create SOAP Factory: Unable to create SAAJ meta-factoryProvider com.sun.xml.messaging.saaj.soap.SAAJMeta
    FactoryImpl not found
    javax.xml.soap.SOAPException: Unable to create SOAP Factory: Unable to create SAAJ meta-factoryProvider com.sun.xml.mess
    aging.saaj.soap.SAAJMetaFactoryImpl not found
            at javax.xml.soap.SOAPFactory.newInstance(Unknown Source)
            at com.sun.jbi.httpsoapbc.SoapDenormalizer.<init>(SoapDenormalizer.java:142)
            at com.sun.jbi.httpsoapbc.OutboundMessageProcessor.<init>(OutboundMessageProcessor.java:162)
            at com.sun.jbi.httpsoapbc.OutboundMessageProcessorPool.<init>(OutboundMessageProcessorPool.java:61)
            at com.sun.jbi.httpsoapbc.OutboundReceiver.<init>(OutboundReceiver.java:119)
            at com.sun.jbi.httpsoapbc.HttpSoapBindingLifeCycle.startOutbound(HttpSoapBindingLifeCycle.java:971)
            at com.sun.jbi.httpsoapbc.HttpSoapBindingLifeCycle.start(HttpSoapBindingLifeCycle.java:462)
            at com.sun.jbi.framework.ComponentFramework.startComponent(ComponentFramework.java:1723)
            at com.sun.jbi.framework.ComponentFramework.startComponent(ComponentFramework.java:1673)
            at com.sun.jbi.framework.ComponentOperation.process(ComponentOperation.java:233)
            at com.sun.jbi.framework.Operation.run(Operation.java:104)
            at java.lang.Thread.run(Thread.java:595)
    2008-5-7 14:22:51 com.sun.jbi.framework.ComponentFramework startComponent
    信息: JBIFW1146: Engine sun-bpel-engine has been started.
    2008-5-7 14:22:51 com.sun.jbi.framework.ComponentFramework startComponent
    警告: JBIFW1149: Binding sun-http-binding cannot be started. The LifeCycle start() method threw a javax.jbi.JBIException
     exception. The exception message is: HTTPBC-E00101: sun-http-binding failed to start. HTTPBC-E00778: Failed to create O
    utboundMessageProcessor. {0}
    2008-5-7 14:22:51 com.sun.jbi.framework.ComponentFramework startComponent
    警告: javax.jbi.JBIException: HTTPBC-E00101: sun-http-binding failed to start. HTTPBC-E00778: Failed to create OutboundM
    essageProcessor. {0}
            at com.sun.jbi.httpsoapbc.HttpSoapBindingLifeCycle.start(HttpSoapBindingLifeCycle.java:473)
            at com.sun.jbi.framework.ComponentFramework.startComponent(ComponentFramework.java:1723)
            at com.sun.jbi.framework.ComponentFramework.startComponent(ComponentFramework.java:1673)
            at com.sun.jbi.framework.ComponentOperation.process(ComponentOperation.java:233)
            at com.sun.jbi.framework.Operation.run(Operation.java:104)
            at java.lang.Thread.run(Thread.java:595)
    Caused by: java.lang.IllegalStateException: HTTPBC-E00778: Failed to create OutboundMessageProcessor. {0}
            at com.sun.jbi.httpsoapbc.OutboundMessageProcessor.<init>(OutboundMessageProcessor.java:209)
            at com.sun.jbi.httpsoapbc.OutboundMessageProcessorPool.<init>(OutboundMessageProcessorPool.java:61)
            at com.sun.jbi.httpsoapbc.OutboundReceiver.<init>(OutboundReceiver.java:119)
            at com.sun.jbi.httpsoapbc.HttpSoapBindingLifeCycle.startOutbound(HttpSoapBindingLifeCycle.java:971)
            at com.sun.jbi.httpsoapbc.HttpSoapBindingLifeCycle.start(HttpSoapBindingLifeCycle.java:462)
            ... 5 more
      

  8.   

    既然是lib里有,如果是web工程的话那可能是没有加载进去,造成不能找到他们