hadoop-0.20.2自带的eclipse插件是不支持eclipse-3.5以上的,要想让它支持3.5以上就必须重新编译eclipse插件。
首先先修改 hadoop-0.20.2\src\contrib\eclipse-plugin\src\java\org\apache\hadoop\eclipse\launch\HadoopApplicationLaunchShortcut.java
//import org.eclipse.jdt.internal.debug.ui.launcher.JavaApplicationLaunchShortcut;
import org.eclipse.jdt.debug.ui.launchConfigurations.JavaApplicationLaunchShortcut;
在修改 hadoop-0.20.2\src\contrib\build-contrib.xml
加入
<property name="version" value="0.20.2"/>
<property name="eclipse.home" location="D:/eclipse"/>
将hadoop-0.20.2下的hadoop-0.20.2-core.jar包拷到eclipse的plugins目录下。
在修改 hadoop-0.20.2\src\contrib\eclipse-plugin\build.xml
在
<path id="eclipse-sdk-jars">
<fileset dir="${eclipse.home}/plugins/">
</fileset>
</path>
中加入
<include name="hadoop*.jar"/>
将compile模块中
deprecation="${javac.deprecation}
去掉。
打开CMD cd到hadoop-0.20.2\src\contrib\eclipse-plugin下使用ant
这时开始编译,但是在编译中会报错,主要出在jar时的copy问题上。
把commons-cli-1.2.jar拷到hadoop-0.20.2\build\ivy\lib\Hadoop\common\下,将hadoop-0.20.2-core.jar拷到hadoop-0.20.2\build下即可。
然后在ant,编译成功后会在hadoop-0.20.2\build\contrib\eclipse-plugin\下生成hadoop-0.20.2-eclipse-plugin.jar。将其拷到eclipse的plugins目录下,可以将之前拷到plugins下的hadoop-0.20.2-core.jar包删除,重新打开eclipse。