I have such a nightmare with the Hadoop\'s Eclipse plugin. First of all the latest Hadoop version (which is 1.1.1) doesn\'t even include the Eclipse plugin jar file. version 1.0
Well, combined with hs3180's answer, here is what I actually did in configuring the compiling.
In ${eclipse-plugin-src}/build.xml, use the following directives to include required jars by the eclipse-plugin. Note here that, instead of from ${hadoop.root}/build
, copying of the hadoop-core-${version}.jar
is now from ${hadoop.root}
directly, because if you are using the compiled version of hadoop, the ${hadoop.root}/build
folder would be actually empty. Copying of the commons-cli-${commons-cli.version}.jar
is now from ${hadoop.root}/lib
for the same reason.
Modify the ${eclipse-plugin-src}/META-INF/MANIFEST.MF file to accommodate the changes made to ${eclipse-plugin-src}/build.xml.
Bundle-ClassPath: classes/,
lib/hadoop-core.jar,
lib/commons-cli-1.2.jar,
lib/commons-configuration-1.6.jar,
lib/jackson-core-asl-1.8.8.jar,
lib/commons-httpclient-3.0.1.jar,
lib/jackson-mapper-asl-1.8.8.jar,
lib/commons-lang-2.4.jar
Modify the ${hadoop.root}/src/contrib/build-contrib.xml file at two places. The first is to set up the properties needed for the plugin compiling. And the second is to make sure jars, especially hadoop-core-1.0.4.jar
, in the ${hadoop.root}
folder are visible to javac, because the eclipse-plugin references the hadoop classes. This setup is different from the first two in purpose and thus not dispensable.
When all files correctly configured, call 'ant jar' from ${eclipse-plugin-src}/
in the console shall be sufficient for the rest.