在hadoop的提示符下创建并运行runnable jar

时间:2014-02-28 06:35:00

标签: java eclipse hadoop jar

我想要使用Hadoop软件包中提供的示例WordCount程序。因此,我在eclipse中创建了一个自定义项目,并在我的自定义类中复制了整个wordcount代码。我还在项目的构建路径中包含了所有外部Hadoop jar。最后,尝试创建一个Runnable JAR:File - >出口 - > Java选项卡 - > Runnable Jar。

但是,我在jar创建中得到了错误:使用编译警告导出:custom_project / src / custom_package / CustomWordCount.java

尽管代码没有错误,但jar创建给了我一个问题。如何解决这个问题?

3 个答案:

答案 0 :(得分:0)

Eclipse不允许我们使用带警告的代码创建一个Runnable Jar。

例如,

1)未使用的进口(包装) 2)不推荐的警告等

因此,请确保在创建jar之前先处理所有这些问题。此外,在hadoop的示例WordCount代码中,创建了Job类的实例。哪个被弃用了。因此,你肯定会遇到问题。因此,要克服这一点,请删除该行:  删除作业作业=新作业(conf,“基本字数”);

并包含以下行: 工作职位= Job.getInstance();

答案 1 :(得分:0)

如果您有编译警告,导出不会停止。即使你有错误,其他类文件也将被打包为一个独立的ant脚本

包含已保存生成文件的示例项目Run sample

IDE导出的Bld.xml(eclipse)

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project default="create_run_jar" name="Create Runnable Jar for Project Run1 with libraries in sub-folder">
    <!--this file was created by Eclipse Runnable JAR Export Wizard-->
    <!--ANT 1.7 is required                                        -->
    <target name="create_run_jar">
        <jar destfile="D:/U/t/workspace/1/Run1/o/RunApp.jar">
            <manifest>
                <attribute name="Main-Class" value="m.TT"/>
                <attribute name="Class-Path" value="."/>
            </manifest>
            <fileset dir="D:/U/t/workspace/1/Run1/bin"/>
        </jar>
        <delete dir="D:/U/t/workspace/1/Run1/o/RunApp_lib"/>
        <mkdir dir="D:/U/t/workspace/1/Run1/o/RunApp_lib"/>
    </target>
</project>

答案 2 :(得分:0)

那不再是真的了。我刚刚从Kepler导出了Runnable jar我的项目,在Hadoop集群上运行,它保存了jar文件没有任何问题,有很多警告。