Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache oozie启动器错误_Apache_Hadoop_Oozie - Fatal编程技术网

Apache oozie启动器错误

Apache oozie启动器错误,apache,hadoop,oozie,Apache,Hadoop,Oozie,我想使用apache oozie运行sqoop操作,但它总是给我错误: Launcher ERROR, reason: Main class [org.apache.oozie.action.hadoop.SqoopMain], main() threw exception, null my workflow.xml是: <workflow-app name="Datashop-Core-Sqoop" xmlns="uri:oozie:workflow:0.1"> <!--

我想使用apache oozie运行sqoop操作,但它总是给我错误:

Launcher ERROR, reason: Main class [org.apache.oozie.action.hadoop.SqoopMain], main() threw exception, null
my workflow.xml是:

<workflow-app name="Datashop-Core-Sqoop" xmlns="uri:oozie:workflow:0.1">
<!--    <start to="inputAvailableCheckDecision"/>
         <decision name="inputAvailableCheckDecision">
                <switch>
                        <case to="sqoopAction">
                                ${sqoopInputRecordCount gt minRequiredRecordCount}
                        </case>
                        <default to="end"/>
                </switch>
        </decision> -->
    <start to="sqoopAction"/>
            <action name="sqoopAction">
                <sqoop xmlns="uri:oozie:sqoop-action:0.2">
                        <job-tracker>${jobTracker}</job-tracker>
                        <name-node>${nameNode}</name-node>
                        <configuration>
                                <property>
                                        <name>mapred.job.queue.name</name>
                                        <value>${queueName}</value>
                                </property>
                                <property>
                                        <name>oozie.libpath</name>
                                        <value>${oozieLibPath}</value>
                                </property>
                        </configuration>
                        <command>import --connect jdbc:mysql://${mysqlServer}/${mysqlServerDB} --username ${mysqlServerDBUID} --password ${mysqlServerDBPwd} --tabltable ${mysqlTable} -m 1 --target-dir ${targetDir}</command>
                </sqoop>
                <ok to="end"/>
                <error to="killJob"/>
        </action>
        <kill name="killJob">
                <message>"Killed job due to error: ${wf:errorMessage(wf:lastErrorNode())}"</message>
        </kill>
        <end name="end" />
</workflow-app>
在一些堆栈问题中,我发现外部库需要包含在

因此,我更改了我的workflow.xml,并在标签下方添加了一行:

<file>${oozieLibPath}/sqoop/mysql-connector-java-5.1.37-bin.jar#mysql-connector-java-5.1.37-bin.jar</file>
${oozieLibPath}/sqoop/mysql-connector-java-5.1.37-bin.jar#mysql-connector-java-5.1.37-bin.jar

但同样的错误产生了可能是这个错误的原因。还有什么我需要配置的吗?

我的2美分:从仔细浏览日志开始,放大实际问题,例如>>然后根据需要更新您的帖子顺便问一下:什么类型的Oozie安装--使用发行版打包或定制?是否安装了默认的ShareLib,如果是,使用哪个版本的Sqoop?您是否尝试了“使用系统libpath”属性而不是设置自定义路径?@SamsonScharfrichter我拥有oozie的发行版包,是的,我已经安装了sharelibs,我可以通过“oozie admin-oozie-shareliblist”来验证它。除了这个sqoop版本是1.4.6之外。在我的job.properties文件中,我使用了“oozie.use.system.libpath=true”@SamsonScharfrichter,我按照您的链接进行调试,在“纱线日志”中,我发现了以下错误。我找过了,但什么也没找到。纱线的日志为:log4j:ERROR setFile(null,true)调用失败。java.io.FileNotFoundException:/opt/hadoop/logs/userlogs/application_1450691245638_0001/container_1450691245638_0001_01_000001(是一个目录)不是纱线问题,而是Log4J配置问题。问题是,哪个组件缺少log4j.properties文件(您的MR作业?Oozie启动器?sthg else??),哪个记录器缺少该文件中的特定条目(…)
<file>${oozieLibPath}/sqoop/mysql-connector-java-5.1.37-bin.jar#mysql-connector-java-5.1.37-bin.jar</file>