我想要使用Hadoop软件包中提供的示例WordCount程序。因此,我在eclipse中创建了一个自定义项目,并在我的自定义类中复制了整个wordcount代码。我还在项目的构建路径中包含了所有外部Hadoop jar。最后,尝试创建一个Runnable JAR:File - >出口 - > Java选项卡 - > Runnable Jar。
但是,我在jar创建中得到了错误:使用编译警告导出:custom_project / src / custom_package / CustomWordCount.java
尽管代码没有错误,但jar创建给了我一个问题。如何解决这个问题?
答案 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文件没有任何问题,有很多警告。