前言
在上一节中我们搭建起了测试环境,这一节我们根据前边序言中的内容,修改一下nameNode的启动代码看是否生效。
修改代码
在工程 hadoop-hdfs-project中的hadoop-hdfs中找到源文件NameNode.java(在包org.apache.hadoop.hdfs.server.namenode 内)
在main 函数内添加以下代码
System.out.println("Hello hadoop!!!!!!!!!");
System.out.println("Hello hadoop!!!!!!!!!");
System.out.println("Hello hadoop!!!!!!!!!");
System.out.println("Hello hadoop!!!!!!!!!");
System.out.println("Hello hadoop!!!!!!!!!");
System.out.println("Hello hadoop!!!!!!!!!");
System.out.println("Hello hadoop!!!!!!!!!");
System.out.println("Hello hadoop!!!!!!!!!");
System.out.println("Hello hadoop!!!!!!!!!");
OK然后进入源文件根目录,重新编译整个项目
$mvn clean #先清理一下将以前生成的删除
$mvn package -Pdist -DskipTests -Dtar #重新编译
执行完成以后我们可以在目录Hadoop-2.7.3-src/hadoop-hdfs-project/hadoop-hdfs/target下找到文件hadoop-hdfs-2.7.3.jar
这就是我们刚生成的jar包,我们将hadoop程序中的hadoop-hdfs-2.7.3.jar替换成该文件(在目录local/hadoop-2.7.3/share/hadoop/hdfs下)
接下来重新启动hadoop,我们观察其中启动的时候是否会执行我们的System.out.println(“hello hadoop!!!!!!”)语句
$stop-hdfs.sh #先关闭hdfs
$start-hdfs.sh #再启动hdfs
我们可以看到在启动的过程中控台打印出了
...
localhost: Hello hadoop!!!!!!!!!
localhost: Hello hadoop!!!!!!!!!
...
如果看到以上输出内容就说明我们修改源代码生效了。