Hadoop学习之编译eclipse插件

来源:互联网 发布:蒙特祖玛的宝藏5 mac 编辑:程序博客网 时间:2024/04/29 19:36

   最近准备开始学习Hadoop1.2.1的源代码,感觉最好的方法还是可以在运行Hadoop及hadoop作业时跟踪调试代码的实际执行情况。由于选择的IDE为eclipse,所以准备编译一下hadoop的eclipse插件,下面就直接进入正题。Hadoop的eclipse插件源代码位于hadoop-1.2.1/src/contrib/eclipse-plugin/中,直接进入该目录,在不做任何修改的情况下,在命令行输入ant,执行效果如下:

[hadoop@hadoop eclipse-plugin]$ antBuildfile: /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/build.xmlcheck-contrib:     [echo] eclipse.home unset: skipping eclipse plugininit:ivy-download:      [get] Getting: http://repo2.maven.org/maven2/org/apache/ivy/ivy/2.1.0/ivy-2.1.0.jar      [get] To: /home/hadoop/hadoop-1.2.1/ivy/ivy-2.1.0.jar      [get] Not modified - so not downloadedivy-probe-antlib:ivy-init-antlib:ivy-init:[ivy:configure] :: Ivy 2.1.0 - 20090925235825 :: http://ant.apache.org/ivy/ ::[ivy:configure] :: loading settings :: file = /home/hadoop/hadoop-1.2.1/ivy/ivysettings.xmlivy-resolve-common:[ivy:resolve] [ivy:resolve] :: problems summary ::[ivy:resolve] :::: WARNINGS[ivy:resolve] module not found: commons-logging#commons-logging;1.0.4[ivy:resolve] ==== local: tried[ivy:resolve]   /home/hadoop/.ivy2/local/commons-logging/commons-logging/1.0.4/ivys/ivy.xml[ivy:resolve]   -- artifact commons-logging#commons-logging;1.0.4!commons-logging.jar:[ivy:resolve]   /home/hadoop/.ivy2/local/commons-logging/commons-logging/1.0.4/jars/commons-logging.jar[ivy:resolve] ==== maven2: tried[ivy:resolve]   http://repo1.maven.org/maven2/commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.pom[ivy:resolve]   -- artifact commons-logging#commons-logging;1.0.4!commons-logging.jar:[ivy:resolve]   http://repo1.maven.org/maven2/commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.jar[ivy:resolve] ==== oss-sonatype: tried[ivy:resolve]   https://oss.sonatype.org/content/groups/public/commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.pom[ivy:resolve]   -- artifact commons-logging#commons-logging;1.0.4!commons-logging.jar:[ivy:resolve]   https://oss.sonatype.org/content/groups/public/commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.jar[ivy:resolve] ::::::::::::::::::::::::::::::::::::::::::::::[ivy:resolve] ::          UNRESOLVED DEPENDENCIES         ::[ivy:resolve] ::::::::::::::::::::::::::::::::::::::::::::::[ivy:resolve] :: commons-logging#commons-logging;1.0.4: not found[ivy:resolve] ::::::::::::::::::::::::::::::::::::::::::::::[ivy:resolve] :::: ERRORS[ivy:resolve] SERVER ERROR: Gateway Timeout url=http://repo1.maven.org/maven2/commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.pom[ivy:resolve] SERVER ERROR: Gateway Timeout url=http://repo1.maven.org/maven2/commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.jar[ivy:resolve] SERVER ERROR: Gateway Timeout url=http://repo1.maven.org/maven2/log4j/log4j/1.2.15/log4j-1.2.15.jar[ivy:resolve] [ivy:resolve] :: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILSBUILD FAILED/home/hadoop/hadoop-1.2.1/src/contrib/build-contrib.xml:492: impossible to resolve dependencies:resolve failed - see output for detailsTotal time: 2 minutes 25 seconds

根据错误信息,可以将错误的根源定位到hadoop-1.2.1/src/contrib/ eclipse-plugin/ ivy.xml中的29行rev="${commons-logging.version}"。该值可以在hadoop-1.2.1/ivy/libraries.properties中找到,其原值为1.0.4,改为commons-logging.version=1.1.1即可。同时该输出信息还提示了[echo] eclipse.homeunset: skipping eclipse plugin,此信息提示变量eclipse.home未设置,而该变量在编译插件时是必须的,所以在hadoop-1.2.1/src/contrib/eclipse-plugin/build.xml中添加eclipse的安装目录,添加如下代码:<propertyname="eclipse.home" value="/home/hadoop/eclipse"/>,该变量的值根据eclipse的实际安装目录而定。修改完毕后,再次在命令行中输入ant命令,结果如下:

 [hadoop@hadoop eclipse-plugin]$ antBuildfile: /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/build.xmlcheck-contrib:init:     [echo] contrib: eclipse-plugininit-contrib:ivy-download:      [get] Getting: http://repo2.maven.org/maven2/org/apache/ivy/ivy/2.1.0/ivy-2.1.0.jar      [get] To: /home/hadoop/hadoop-1.2.1/ivy/ivy-2.1.0.jar      [get] Not modified - so not downloadedivy-probe-antlib:ivy-init-antlib:ivy-init:[ivy:configure] :: Ivy 2.1.0 - 20090925235825 :: http://ant.apache.org/ivy/ ::[ivy:configure] :: loading settings :: file = /home/hadoop/hadoop-1.2.1/ivy/ivysettings.xmlivy-resolve-common:ivy-retrieve-common:[ivy:cachepath] DEPRECATED: 'ivy.conf.file' is deprecated, use 'ivy.settings.file' instead[ivy:cachepath] :: loading settings :: file = /home/hadoop/hadoop-1.2.1/ivy/ivysettings.xmlcompile:     [echo] contrib: eclipse-plugin    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/build.xml:61: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds    [javac] Compiling 45 source files to /home/hadoop/hadoop-1.2.1/build/contrib/eclipse-plugin/classes    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSFolder.java:28: 软件包 org.apache.hadoop.fs 不存在    [javac] import org.apache.hadoop.fs.FileStatus;    [javac]                            ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSFolder.java:29: 软件包 org.apache.hadoop.fs 不存在    [javac] import org.apache.hadoop.fs.Path;    [javac]                            ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSPath.java:25: 软件包 org.apache.hadoop.hdfs 不存在    [javac] import org.apache.hadoop.hdfs.DistributedFileSystem;    [javac]                              ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSPath.java:29: 软件包 org.apache.hadoop.fs 不存在    [javac] import org.apache.hadoop.fs.FileSystem;    [javac]                            ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSPath.java:30: 软件包 org.apache.hadoop.fs 不存在    [javac] import org.apache.hadoop.fs.Path;    [javac]                            ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:36: 软件包 org.apache.hadoop.conf 不存在    [javac] import org.apache.hadoop.conf.Configuration;    [javac]                              ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:38: 软件包 org.apache.hadoop.fs 不存在    [javac] import org.apache.hadoop.fs.FileSystem;    [javac]                            ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:39: 软件包 org.apache.hadoop.io 不存在    [javac] import org.apache.hadoop.io.IOUtils;    [javac]                            ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:40: 软件包 org.apache.hadoop.mapred 不存在    [javac] import org.apache.hadoop.mapred.JobClient;    [javac]                                ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:41: 软件包 org.apache.hadoop.mapred 不存在    [javac] import org.apache.hadoop.mapred.JobConf;    [javac]                                ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:42: 软件包 org.apache.hadoop.mapred 不存在    [javac] import org.apache.hadoop.mapred.JobID;    [javac]                                ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:43: 软件包 org.apache.hadoop.mapred 不存在    [javac] import org.apache.hadoop.mapred.JobStatus;    [javac]                                ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:44: 软件包 org.apache.hadoop.mapred 不存在    [javac] import org.apache.hadoop.mapred.RunningJob;    [javac]                                ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSFolder.java:54: 找不到符号    [javac] 符号: 类 Path    [javac] 位置: 类 org.apache.hadoop.eclipse.dfs.DFSFolder    [javac]   private DFSFolder(DFSPath parent, Path path) {    [javac]                                     ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSPath.java:43: 找不到符号    [javac] 符号: 类 DistributedFileSystem    [javac] 位置: 类 org.apache.hadoop.eclipse.dfs.DFSPath    [javac]   private DistributedFileSystem dfs = null;    [javac]           ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSPath.java:45: 找不到符号    [javac] 符号: 类 Path    [javac] 位置: 类 org.apache.hadoop.eclipse.dfs.DFSPath    [javac]   protected final Path path;    [javac]                   ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSPath.java:76: 找不到符号    [javac] 符号: 类 Path    [javac] 位置: 类 org.apache.hadoop.eclipse.dfs.DFSPath    [javac]   protected DFSPath(DFSPath parent, Path path) {    [javac]                                     ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSPath.java:134: 找不到符号    [javac] 符号: 类 Path    [javac] 位置: 类 org.apache.hadoop.eclipse.dfs.DFSPath    [javac]   public Path getPath() {    [javac]          ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSPath.java:144: 找不到符号    [javac] 符号: 类 DistributedFileSystem    [javac] 位置: 类 org.apache.hadoop.eclipse.dfs.DFSPath    [javac]   DistributedFileSystem getDFS() throws IOException {    [javac]   ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSLocationsRoot.java:28: 软件包 org.apache.hadoop.fs 不存在    [javac] import org.apache.hadoop.fs.FileSystem;    [javac]                            ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:199: 找不到符号    [javac] 符号: 类 Configuration    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer    [javac]   private Configuration conf;    [javac]           ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:209: 找不到符号    [javac] 符号: 类 JobID    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer    [javac]   private transient Map<JobID, HadoopJob> runningJobs =    [javac]                         ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:24: 软件包 org.apache.hadoop.fs 不存在    [javac] import org.apache.hadoop.fs.FileSystem;    [javac]                            ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:25: 软件包 org.apache.hadoop.fs 不存在    [javac] import org.apache.hadoop.fs.FileUtil;    [javac]                            ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:26: 软件包 org.apache.hadoop.fs 不存在    [javac] import org.apache.hadoop.fs.Path;    [javac]                            ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:27: 软件包 org.apache.hadoop.mapred 不存在    [javac] import org.apache.hadoop.mapred.Counters;    [javac]                                ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:28: 软件包 org.apache.hadoop.mapred 不存在    [javac] import org.apache.hadoop.mapred.JobConf;    [javac]                                ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:29: 软件包 org.apache.hadoop.mapred 不存在    [javac] import org.apache.hadoop.mapred.JobID;    [javac]                                ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:30: 软件包 org.apache.hadoop.mapred 不存在    [javac] import org.apache.hadoop.mapred.JobStatus;    [javac]                                ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:31: 软件包 org.apache.hadoop.mapred 不存在    [javac] import org.apache.hadoop.mapred.RunningJob;    [javac]                                ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:291: 找不到符号    [javac] 符号: 类 Configuration    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer    [javac]   public Configuration getConfiguration() {    [javac]          ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/ConfProp.java:24: 软件包 org.apache.hadoop.conf 不存在    [javac] import org.apache.hadoop.conf.Configuration;    [javac]                              ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:468: 找不到符号    [javac] 符号: 类 FileSystem    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer    [javac]   public FileSystem getDFS() throws IOException {    [javac]          ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:477: 找不到符号    [javac] 符号: 类 JobClient    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer    [javac]   public JobClient getJobClient() throws IOException {    [javac]          ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:76: 找不到符号    [javac] 符号: 类 JobID    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob    [javac]   final JobID jobId;    [javac]         ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:82: 找不到符号    [javac] 符号: 类 RunningJob    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob    [javac]   RunningJob running;    [javac]   ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:89: 找不到符号    [javac] 符号: 类 JobStatus    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob    [javac]   JobStatus status;    [javac]   ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:94: 找不到符号    [javac] 符号: 类 Counters    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob    [javac]   Counters counters;    [javac]   ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:99: 找不到符号    [javac] 符号: 类 JobConf    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob    [javac]   JobConf jobConf = null;    [javac]   ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:127: 找不到符号    [javac] 符号: 类 JobID    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob    [javac]   public HadoopJob(HadoopServer location, JobID id, RunningJob running,    [javac]                                           ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:127: 找不到符号    [javac] 符号: 类 RunningJob    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob    [javac]   public HadoopJob(HadoopServer location, JobID id, RunningJob running,    [javac]                                                     ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:128: 找不到符号    [javac] 符号: 类 JobStatus    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob    [javac]       JobStatus status) {    [javac]       ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:215: 找不到符号    [javac] 符号: 类 JobID    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob    [javac]   public JobID getJobID() {    [javac]          ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:278: 找不到符号    [javac] 符号: 类 JobStatus    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob    [javac]   void update(JobStatus status) {    [javac]               ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:88: 找不到符号    [javac] 符号: 类 JobClient    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer.LocationStatusUpdater    [javac]     JobClient client = null;    [javac]     ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:181: 找不到符号    [javac] 符号: 类 JobStatus    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer.LocationStatusUpdater    [javac]     private void updateJob(final HadoopJob job, JobStatus status) {    [javac]                                                 ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/ConfProp.java:138: 找不到符号    [javac] 符号: 类 Configuration    [javac] 位置: 类 org.apache.hadoop.eclipse.server.ConfProp    [javac]   String get(Configuration conf) {    [javac]              ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/ConfProp.java:142: 找不到符号    [javac] 符号: 类 Configuration    [javac] 位置: 类 org.apache.hadoop.eclipse.server.ConfProp    [javac]   void set(Configuration conf, String value) {    [javac]            ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSFile.java:34: 软件包 org.apache.hadoop.fs 不存在    [javac] import org.apache.hadoop.fs.FileStatus;    [javac]                            ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSFile.java:35: 软件包 org.apache.hadoop.fs 不存在    [javac] import org.apache.hadoop.fs.Path;    [javac]                            ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSFile.java:63: 找不到符号    [javac] 符号: 类 Path    [javac] 位置: 类 org.apache.hadoop.eclipse.dfs.DFSFile    [javac]   public DFSFile(DFSPath parent, Path path, File file,    [javac]                                  ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSFile.java:70: 找不到符号    [javac] 符号: 类 Path    [javac] 位置: 类 org.apache.hadoop.eclipse.dfs.DFSFile    [javac]   public DFSFile(DFSPath parent, Path path) {    [javac]                                  ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/servers/HadoopLocationWizard.java:31: 软件包 org.apache.hadoop.conf 不存在    [javac] import org.apache.hadoop.conf.Configuration;    [javac]                              ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/servers/RunOnHadoopWizard.java:31: 软件包 org.apache.hadoop.io 不存在    [javac] import org.apache.hadoop.io.IOUtils;    [javac]                            ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/servers/RunOnHadoopWizard.java:32: 软件包 org.apache.hadoop.mapred 不存在    [javac] import org.apache.hadoop.mapred.JobConf;    [javac]                                ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/servers/ServerRegistry.java:31: 软件包 org.apache.hadoop.conf 不存在    [javac] import org.apache.hadoop.conf.Configuration;    [javac]                              ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSPath.java:66: 找不到符号    [javac] 符号: 类 Path    [javac] 位置: 类 org.apache.hadoop.eclipse.dfs.DFSPath    [javac]     this.path = new Path("/");    [javac]                     ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSPath.java:146: 找不到符号    [javac] 符号: 类 FileSystem    [javac] 位置: 类 org.apache.hadoop.eclipse.dfs.DFSPath    [javac]       FileSystem fs = location.getDFS();    [javac]       ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSPath.java:147: 找不到符号    [javac] 符号: 类 DistributedFileSystem    [javac] 位置: 类 org.apache.hadoop.eclipse.dfs.DFSPath    [javac]       if (!(fs instanceof DistributedFileSystem)) {    [javac]                           ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSPath.java:153: 找不到符号    [javac] 符号: 类 DistributedFileSystem    [javac] 位置: 类 org.apache.hadoop.eclipse.dfs.DFSPath    [javac]       this.dfs = (DistributedFileSystem) fs;    [javac]                   ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSFolder.java:61: 找不到符号    [javac] 符号: 类 FileStatus    [javac] 位置: 类 org.apache.hadoop.eclipse.dfs.DFSFolder    [javac]     for (FileStatus status : getDFS().listStatus(this.getPath())) {    [javac]          ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSFolder.java:82: 找不到符号    [javac] 符号: 类 Path    [javac] 位置: 类 org.apache.hadoop.eclipse.dfs.DFSFolder    [javac]       Path filePath = new Path(this.path, file.getName());    [javac]       ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSFolder.java:82: 找不到符号    [javac] 符号: 类 Path    [javac] 位置: 类 org.apache.hadoop.eclipse.dfs.DFSFolder    [javac]       Path filePath = new Path(this.path, file.getName());    [javac]                           ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSFolder.java:93: 找不到符号    [javac] 符号: 类 Path    [javac] 位置: 类 org.apache.hadoop.eclipse.dfs.DFSFolder    [javac]       Path filePath = new Path(this.path, file.getName());    [javac]       ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSFolder.java:93: 找不到符号    [javac] 符号: 类 Path    [javac] 位置: 类 org.apache.hadoop.eclipse.dfs.DFSFolder    [javac]       Path filePath = new Path(this.path, file.getName());    [javac]                           ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSFolder.java:152: 找不到符号    [javac] 符号: 类 Path    [javac] 位置: 类 org.apache.hadoop.eclipse.dfs.DFSFolder    [javac]       getDFS().mkdirs(new Path(this.path, folderName));    [javac]                           ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:116: 找不到符号    [javac] 符号: 类 JobID    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer.LocationStatusUpdater    [javac]         Set<JobID> missingJobIds =    [javac]             ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:117: 找不到符号    [javac] 符号: 类 JobID    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer.LocationStatusUpdater    [javac]             new HashSet<JobID>(runningJobs.keySet());    [javac]                         ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:119: 找不到符号    [javac] 符号: 类 JobStatus    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer.LocationStatusUpdater    [javac]         JobStatus[] jstatus = client.jobsToComplete();    [javac]         ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:120: 找不到符号    [javac] 符号: 类 JobStatus    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer.LocationStatusUpdater    [javac]         for (JobStatus status : jstatus) {    [javac]              ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:122: 找不到符号    [javac] 符号: 类 JobID    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer.LocationStatusUpdater    [javac]           JobID jobId = status.getJobID();    [javac]           ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:130: 找不到符号    [javac] 符号: 类 RunningJob    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer.LocationStatusUpdater    [javac]               RunningJob running = client.getJob(jobId);    [javac]               ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:142: 找不到符号    [javac] 符号: 类 JobID    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer.LocationStatusUpdater    [javac]         for (JobID jobId : missingJobIds) {    [javac]              ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:210: 找不到符号    [javac] 符号: 类 JobID    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer    [javac]       Collections.synchronizedMap(new TreeMap<JobID, HadoopJob>());    [javac]                                               ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:224: 找不到符号    [javac] 符号: 类 Configuration    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer    [javac]     this.conf = new Configuration();    [javac]                     ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:238: 找不到符号    [javac] 符号: 类 Configuration    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer    [javac]     this.conf = new Configuration();    [javac]                     ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:338: 找不到符号    [javac] 符号: 类 Configuration    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer    [javac]     this.conf = new Configuration(existing.conf);    [javac]                     ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:354: 找不到符号    [javac] 符号: 类 Configuration    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer    [javac]     Configuration newConf = new Configuration(this.conf);    [javac]     ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:354: 找不到符号    [javac] 符号: 类 Configuration    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer    [javac]     Configuration newConf = new Configuration(this.conf);    [javac]                                 ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:429: 找不到符号    [javac] 符号: 变量 IOUtils    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer    [javac]       IOUtils.closeStream(fos);    [javac]       ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:469: 找不到符号    [javac] 符号: 变量 FileSystem    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer    [javac]     return FileSystem.get(this.conf);    [javac]            ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:478: 找不到符号    [javac] 符号: 类 JobConf    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer    [javac]     JobConf jconf = new JobConf(this.conf);    [javac]     ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:478: 找不到符号    [javac] 符号: 类 JobConf    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer    [javac]     JobConf jconf = new JobConf(this.conf);    [javac]                         ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopServer.java:479: 找不到符号    [javac] 符号: 类 JobClient    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopServer    [javac]     return new JobClient(jconf);    [javac]                ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSLocationsRoot.java:131: 找不到符号    [javac] 符号: 变量 FileSystem    [javac]           FileSystem.closeAll();    [javac]           ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:43: 找不到符号    [javac] 符号: 变量 JobStatus    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob.JobState    [javac]     PREPARE(JobStatus.PREP), RUNNING(JobStatus.RUNNING), FAILED(    [javac]             ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:43: 找不到符号    [javac] 符号: 变量 JobStatus    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob.JobState    [javac]     PREPARE(JobStatus.PREP), RUNNING(JobStatus.RUNNING), FAILED(    [javac]                                      ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:44: 找不到符号    [javac] 符号: 变量 JobStatus    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob.JobState    [javac]         JobStatus.FAILED), SUCCEEDED(JobStatus.SUCCEEDED);    [javac]         ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:44: 找不到符号    [javac] 符号: 变量 JobStatus    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob.JobState    [javac]         JobStatus.FAILED), SUCCEEDED(JobStatus.SUCCEEDED);    [javac]                                      ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:54: 找不到符号    [javac] 符号: 变量 JobStatus    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob.JobState    [javac]         case JobStatus.PREP:    [javac]              ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:56: 找不到符号    [javac] 符号: 变量 JobStatus    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob.JobState    [javac]         case JobStatus.RUNNING:    [javac]              ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:58: 找不到符号    [javac] 符号: 变量 JobStatus    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob.JobState    [javac]         case JobStatus.FAILED:    [javac]              ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:60: 找不到符号    [javac] 符号: 变量 JobStatus    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob.JobState    [javac]         case JobStatus.SUCCEEDED:    [javac]              ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:146: 找不到符号    [javac] 符号: 类 FileSystem    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob    [javac]       FileSystem fs = location.getDFS();    [javac]       ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:148: 找不到符号    [javac] 符号: 类 Path    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob    [javac]       if (FileUtil.copy(fs, new Path(jobFile), tmp, false, location    [javac]                                 ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:148: 找不到符号    [javac] 符号: 变量 FileUtil    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob    [javac]       if (FileUtil.copy(fs, new Path(jobFile), tmp, false, location    [javac]           ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:150: 找不到符号    [javac] 符号: 类 JobConf    [javac] 位置: 类 org.apache.hadoop.eclipse.server.HadoopJob    [javac]         this.jobConf = new JobConf(tmp.toString());    [javac]                            ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:302: 软件包 Counters 不存在    [javac]       Counters.Group group = counters.getGroup(groupName);    [javac]               ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/server/HadoopJob.java:305: 软件包 Counters 不存在    [javac]       for (Counters.Counter counter : group) {    [javac]                    ^    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/src/java/org/apache/hadoop/eclipse/dfs/DFSFile.java:74: 找不到符号    [javac] 符号: 类 FileStatus    [javac] 位置: 类 org.apache.hadoop.eclipse.dfs.DFSFile    [javac]       FileStatus fs = getDFS().getFileStatus(path);    [javac]       ^    [javac] 注意:某些输入文件使用或覆盖了已过时的 API。    [javac] 注意:要了解详细信息,请使用 -Xlint:deprecation 重新编译。    [javac] 注意:某些输入文件使用了未经检查或不安全的操作。    [javac] 注意:要了解详细信息,请使用 -Xlint:unchecked 重新编译。    [javac] 100 错误BUILD FAILED/home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/build.xml:61: Compile failed; see the compiler error output for details.Total time: 12 seconds

由错误信息可知,classpath中没有包含hadoop相应的jar包。解决方法为在hadoop-1.2.1/src/contrib/eclipse-plugin/build.xml中添加下面的代码:

 <path>         <filesetdir="${hadoop.root}">           <include name="hadoop*.jar"/>         </fileset>    </path>

同时将hadoop-1.2.1/src/contrib/eclipse-plugin/build.xml中的<copyfile="${hadoop.root}/build/hadoop-core-${version}.jar" tofile="${build.dir}/lib/hadoop-core.jar"verbose="true"/>为<copy file="${hadoop.root}/hadoop-core-${version}.jar"tofile="${build.dir}/lib/hadoop-core.jar"verbose="true"/>,做完这些修改后,再次执行ant命令:

[hadoop@hadoop eclipse-plugin]$ antBuildfile: /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/build.xmlcheck-contrib:init:     [echo] contrib: eclipse-plugininit-contrib:ivy-download:      [get] Getting: http://repo2.maven.org/maven2/org/apache/ivy/ivy/2.1.0/ivy-2.1.0.jar      [get] To: /home/hadoop/hadoop-1.2.1/ivy/ivy-2.1.0.jar      [get] Not modified - so not downloadedivy-probe-antlib:ivy-init-antlib:ivy-init:[ivy:configure] :: Ivy 2.1.0 - 20090925235825 :: http://ant.apache.org/ivy/ ::[ivy:configure] :: loading settings :: file = /home/hadoop/hadoop-1.2.1/ivy/ivysettings.xmlivy-resolve-common:ivy-retrieve-common:[ivy:cachepath] DEPRECATED: 'ivy.conf.file' is deprecated, use 'ivy.settings.file' instead[ivy:cachepath] :: loading settings :: file = /home/hadoop/hadoop-1.2.1/ivy/ivysettings.xmlcompile:     [echo] contrib: eclipse-plugin    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/build.xml:66: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds    [javac] Compiling 45 source files to /home/hadoop/hadoop-1.2.1/build/contrib/eclipse-plugin/classes    [javac] 注意:某些输入文件使用或覆盖了已过时的 API。    [javac] 注意:要了解详细信息,请使用 -Xlint:deprecation 重新编译。    [javac] 注意:某些输入文件使用了未经检查或不安全的操作。    [javac] 注意:要了解详细信息,请使用 -Xlint:unchecked 重新编译。jar:    [mkdir] Created dir: /home/hadoop/hadoop-1.2.1/build/contrib/eclipse-plugin/libBUILD FAILED/home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/build.xml:74: Warning: Could not find file /home/hadoop/hadoop-1.2.1/hadoop-core-${version}.jar to copy.Total time: 8 seconds

这次编译失败的原因是找不到hadoop-core-${version}.jar,也就是变量${version}未定义,其实在/hadoop-1.2.1/ivy/libraries.properties中定义了hadoop.version=1.2.1而不是version变量,或者将version替换为hadoop.version,或者在build.xml添加变量version,此次编译过程中选择后者<property name="version" value="1.2.1"/>,再次执行ant:

 [hadoop@hadoop eclipse-plugin]$ antBuildfile: /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/build.xmlcheck-contrib:init:     [echo] contrib: eclipse-plugininit-contrib:ivy-download:      [get] Getting: http://repo2.maven.org/maven2/org/apache/ivy/ivy/2.1.0/ivy-2.1.0.jar      [get] To: /home/hadoop/hadoop-1.2.1/ivy/ivy-2.1.0.jar      [get] Not modified - so not downloadedivy-probe-antlib:ivy-init-antlib:ivy-init:[ivy:configure] :: Ivy 2.1.0 - 20090925235825 :: http://ant.apache.org/ivy/ ::[ivy:configure] :: loading settings :: file = /home/hadoop/hadoop-1.2.1/ivy/ivysettings.xmlivy-resolve-common:ivy-retrieve-common:[ivy:cachepath] DEPRECATED: 'ivy.conf.file' is deprecated, use 'ivy.settings.file' instead[ivy:cachepath] :: loading settings :: file = /home/hadoop/hadoop-1.2.1/ivy/ivysettings.xmlcompile:     [echo] contrib: eclipse-plugin    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/build.xml:67: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable buildsjar:     [copy] Copying 1 file to /home/hadoop/hadoop-1.2.1/build/contrib/eclipse-plugin/lib     [copy] Copying /home/hadoop/hadoop-1.2.1/hadoop-core-1.2.1.jar to /home/hadoop/hadoop-1.2.1/build/contrib/eclipse-plugin/lib/hadoop-core.jarBUILD FAILED/home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/build.xml:76: Warning: Could not find file /home/hadoop/hadoop-1.2.1/build/ivy/lib/Hadoop/common/commons-cli-1.2.jar to copy.Total time: 17 seconds

失败原因是找不到commons-cli-1.2.jar。修复方法是修改build.xml文件,将<copy file="${hadoop.root}/build/ivy/lib/Hadoop/common/commons-cli-${commons-cli.version}.jar"  todir="${build.dir}/lib"verbose="true"/>修改为<copyfile="${hadoop.root}/lib/commons-cli-${commons-cli.version}.jar"  todir="${build.dir}/lib"verbose="true"/>,再次执行ant:

[hadoop@hadoop eclipse-plugin]$ antBuildfile: /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/ build.xmlcheck-contrib:init:     [echo] contrib: eclipse-plugininit-contrib:ivy-download:      [get] Getting: http://repo2.maven.org/maven2/org/apache/ivy/ivy/2.1.0/ivy-2.1.0.jar      [get] To: /home/hadoop/hadoop-1.2.1/ivy/ivy-2.1.0.jar      [get] Not modified - so not downloadedivy-probe-antlib:ivy-init-antlib:ivy-init:[ivy:configure] :: Ivy 2.1.0 - 20090925235825 :: http://ant.apache.org/ivy/ ::[ivy:configure] :: loading settings :: file = /home/hadoop/hadoop-1.2.1/ivy/ivysettings.xmlivy-resolve-common:ivy-retrieve-common:[ivy:cachepath] DEPRECATED: 'ivy.conf.file' is deprecated, use 'ivy.settings.file' instead[ivy:cachepath] :: loading settings :: file = /home/hadoop/hadoop-1.2.1/ivy/ivysettings.xmlcompile:     [echo] contrib: eclipse-plugin    [javac] /home/hadoop/hadoop-1.2.1/src/contrib/eclipse-plugin/build.xml:67: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable buildsjar:     [copy] Copying 1 file to /home/hadoop/hadoop-1.2.1/build/contrib/eclipse-plugin/lib     [copy] Copying /home/hadoop/hadoop-1.2.1/lib/commons-cli-1.2.jar to /home/hadoop/hadoop-1.2.1/build/contrib/eclipse-plugin/lib/commons-cli-1.2.jar      [jar] Building jar: /home/hadoop/hadoop-1.2.1/build/contrib/eclipse-plugin/hadoop-eclipse-plugin-1.2.1.jarBUILD SUCCESSFULTotal time: 10 seconds

至此编译hadoop的eclipse插件成功完成。接下来试试是否可以正常工作,将编译成功的hadoop-1.2.1/build/contrib/eclipse-plugin/hadoop-eclipse-plugin-1.2.1.jar文件拷贝到eclipse下的plugins目录中,然后启动eclipse,在File菜单下选择New子菜单下的Other,弹出下面的窗口。可以发现已经有了Map/Reduce,说明插件已经生效。




0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 苹果锁屏后wifi断开怎么办 兼职一天不给钱怎么办 五月孩子掉床怎么办 孩子五月份掉床怎么办 郑州怎么办暂住证凭条 郑州居住证凭条怎么办 宿舍虫子咬人怎么办 is语音注册频繁怎么办 苹果id注销了怎么办 网站突然打不开了怎么办 谷歌邮箱打不开怎么办 360借款无力承担怎么办 公司被收购期权怎么办 创业板连续亏损怎么办 国企合并后员工怎么办 资金密码忘记了怎么办? 大华电子秤称重不准怎么办 股票暂停上市散户怎么办 入股公司赔钱了怎么办 家里被虚报脱贫怎么办 技术入股想退股怎么办 想开店没有资金怎么办 想开店资金不够怎么办 要开店没资金怎么办 想开店缺少资金怎么办 刚刚开店没有资金怎么办 有专利没钱投资怎么办 肉牛养殖没资金怎么办 入股分红想撤资怎么办 入股后想退股怎么办 土地使用权到期后怎么办 员工辞职扣工资怎么办 公司老板要跑路不发工资怎么办 撤销撤多了怎么办 中葡股份跌停怎么办 厕所里有蟑螂怎么办 机票生日写错怎么办 户口出生地错了怎么办 护照号填写错误怎么办 鱼缸潜水泵声音大怎么办 股票跌到没钱了怎么办