Question

i have a CDH4 cluster running Map-Reduce V1. when I tried to install oozie CDh4 from tarball and configured it as per the instructions given at https://ccp.cloudera.com/display/CDH4DOC/Oozie+Installation#OozieInstallation-Configuringthehadoopversion

On starting the service i get the following error in logs

INFO: Starting Servlet Engine: Apache Tomcat/6.0.32
    11 Oct, 2012 11:51:57 PM org.apache.catalina.startup.HostConfig deployDescriptor
    INFO: Deploying configuration descriptor oozie.xml

    ERROR: Oozie could not be started

    REASON: java.lang.NoClassDefFoundError: org/apache/hadoop/util/ReflectionUtils

    Stacktrace:
    -----------------------------------------------------------------
    java.lang.NoClassDefFoundError: org/apache/hadoop/util/ReflectionUtils
        at org.apache.oozie.service.Services.setServiceInternal(Services.java:349)
        at org.apache.oozie.service.Services.<init>(Services.java:107)
        at org.apache.oozie.servlet.ServicesLoader.contextInitialized(ServicesLoader.java:38)
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4205)
        at org.apache.catalina.core.StandardContext.start(StandardContext.java:4704)
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
        at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:675)
        at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:601)
        at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:502)
        at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1315)
        at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:324)
        at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1061)
        at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
        at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
        at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
        at org.apache.catalina.core.StandardService.start(StandardService.java:525)
        at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
    Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.util.ReflectionUtils
Was it helpful?

Solution

I don't see this in the CDH4 docs, but under CDH3u3 you had to copy the hadoop-core libray into <oozie-home>/lib. That jar contains the missing class from your stack trace.

Edit:

For the life of me, I can't find this in the docs anywhere for cdh3u3, either. So, I copied it and other jars I needed, but I don't remember where I read this.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top