首页 > 解决方案 > 如何在 Hadoop MapReduce java API 中使用 Java 断言?

问题描述

对于java程序,我们可以使用

java -ea

启用断言检查。它在 hadoop 命令中是否可用:

hadoop jar some-mapreduce-program.jar org.foo.bar.MainJob ...

可能吗?

标签: javahadoopmapreduceassert

解决方案


假设 Hadoop 2+,您可以在 mapred-site.xml 中设置此属性

<property>
    <name>mapreduce.map.java.opts</name>
    <value>-ea</value>
</property>

或者,您可以尝试在客户端选项中导出它:

export HADOOP_CLIENT_OPTS="-ea ${HADOOP_CLIENT_OPTS}"
hadoop jar some-mapreduce-program.jar org.foo.bar.MainJob ...

请注意,如果您使用的是集群,则应在所有节点中设置此变量。


推荐阅读