将命令行参数传递给jvm(java)Map器任务

jyztefdp  于 2021-06-03  发布在  Hadoop
关注(0)|答案(1)|浏览(419)

我想调试Map器的某些部分,为此我需要向启动Map器的jvm(java)进程传递一些命令行参数。有什么不同的方法可以做到这一点?
我找到了一种更改maptaskrunner.java的方法,但是我想避免编译整个hadoop包。应该有一些简单的方法使用配置文件将额外的命令行参数传递给jvmMap程序进程。

db2dz4w8

db2dz4w81#

我猜您正在mapred-config.xml中查找以下配置:

<property>
    <name>mapred.child.java.opts</name>
    <value>-Xmx4096m -XX:+UseConcMarkSweepGC</value>
</property>

在值部分,您可以使用 -D .
或者您可以设置 HADOOP_OPTS 在终端中:

export HADOOP_OPTS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5000"

有关本地调试hadoop作业的更多信息,请参阅此处。

相关问题