java - 如何使 'hadoop jar'命令拾取相同名称的jar的新版本

标签 java hadoop

我是hadoop的新手,并且在hadoop 2.6.0中尝试了它的示例。
首先,我重新编译了的源代码hadoop-mapreduce-examples-2.6.0.jar 并构建了一个新的jar文件 MapReduce-0.0.1.jar

然后我用此命令行运行了terasort示例

jjin:hadoop$ bin/hadoop jar ~/shared/MapReduce-0.0.1.jar terasort /input /output
15/01/07 12:27:44 INFO terasort.TeraSort: starting
15/01/07 12:27:46 INFO input.FileInputFormat: Total input paths to process : 1
...

完成terasort后,我通过修改第一行日志消息来更新了TeraSort.java的来源
public int run(String[] args) throws Exception {
LOG.info("starting..."); 
// Update log message by adding '...' to the end of previous one.
Job job = Job.getInstance(getConf());

但是,在重新运行此Terasort作业后,我发现日志消息未更改为“正在启动...”,因此这意味着我对TeraSort.java所做的更改未生效。

问题是如何让Hadoop获取我构建的新 MapReduce-0.0.1.jar
谢谢

最佳答案

您必须重新编译并重新构建jar,然后指定除第一个作业以外的其他输出目录。

关于java - 如何使 'hadoop jar'命令拾取相同名称的jar的新版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27812489/

相关文章:

hadoop - HADOOP错误:找不到或加载主类org.apache.hadoop.fs.FsShell

hadoop - Hive转HBase的问题

java - Java客户端中的HDFS INotify和Kerberos身份验证

java - SqoopOptions 类是否有其他选择

java - 如何将 Kryonet 库导入 Android Studio 上的 libGdx 项目

python - 从 hdfs 读取 csv 文件作为数据帧

java - Oracle Hotspot JVM : generally, 哪些操作特别占用 CPU?

java - Spring 安全 SAML : Extract Attributes from a saml2p:Response as user attributes

java - 如何将 JSP 文件从 WEB-INF 读取到变量中供以后使用 "printing"

java - java中固定大小的数据结构