Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在Eclipse上调试应用程序?_Java_Hadoop_Mapreduce_Remote Debugging_Yarn - Fatal编程技术网

Java 如何在Eclipse上调试应用程序?

Java 如何在Eclipse上调试应用程序?,java,hadoop,mapreduce,remote-debugging,yarn,Java,Hadoop,Mapreduce,Remote Debugging,Yarn,我从MRAppMaster.java代码开始,我想调试一下,看看应用程序的原理 我在Eclipse中导入了整个编译好的hadoop代码 我在本地Linux上运行hadoop 4504 ResourceManager 4066 DataNode 4761 NodeManager 5068 JobHistoryServer 4357 SecondaryNameNode 3833 NameNode 5127 Jps 在hadoop-env.sh中: HADOOP_OPTS="$HADOO

我从MRAppMaster.java代码开始,我想调试一下,看看应用程序的原理

我在Eclipse中导入了整个编译好的hadoop代码

我在本地Linux上运行hadoop

4504 ResourceManager 
4066 DataNode 
4761 NodeManager 
5068 JobHistoryServer 
4357 SecondaryNameNode 
3833 NameNode 
5127 Jps
在hadoop-env.sh中:

HADOOP_OPTS="$HADOOP_OPTS -Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=9000"
然后我跑:

bin/hadoop jar path/to/hadoop-mapreduce-examples-2.2.0.jar wordcount /wordcount /output
然后在MRAppMaster.java和RunJar.java中设置断点。然后在Eclipse中启动调试

它只停在:

Thread [main] (Suspended (breakpoint at line 342 in JobSubmitter)) 
JobSubmitter.submitJobInternal(Job, Cluster) line: 342 
...
RunJar.main(String[]) line: 212

如何调试到MRAppMaster.java?

对您来说已经很晚了,但我也遇到了同样的问题,找到了解决方案,所以将其发布在这里。 首先,如果你正在寻找一份工作,有一篇文章对此进行了解释。 如果您正在寻找调试TEZ的工作,那么您应该在TEZ-site.xml中添加以下内容

<property>
  <name>tez.am.launch.cmd-opts</name>
  <value>-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=7070</value>
</property>

tez.am.launch.cmd-opts
-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=7070