当前位置:   article > 正文

hadoop项目运行+运行时无法加载主类+集群启动步骤_hadoop 加载类

hadoop 加载类

目录

错误: 找不到或无法加载主类 org.apache.hadoop.mapreduce.v2.app.MRAppMaster

1. hadoop classpath

 2. 修改 yarn-sit.xml

3.将修改后的文件分到到其他节点

4. 重启 yarn

hadoop 项目运行

1. 软编码方式

2.硬编码方式

3. 打包配置

Exception in thread "main" java.lang.ClassNotFoundException: com.sys.hadoop.mr.tq.MyFof

4.打包

 5. pom.xml 文件

6. 再次运行正常

hadoop 集群再次运行步骤;

1. 防火墙

2. 开启 zookeeper 集群

3. 使用 start-dfs.sh 开启 hdfs 集群

4. 使用 start-yarn.sh 开启 yarn

5. 验证


 

错误: 找不到或无法加载主类 org.apache.hadoop.mapreduce.v2.app.MRAppMaster

1. hadoop classpath

 2. 修改 yarn-sit.xml

将 hadoop classpath 的输出内容,放到 yarn-sit.xml 文件中。

3.将修改后的文件分到到其他节点

 scp yarn-site.xml yang101:`pwd`

4. 重启 yarn

关闭yarn    stop-yarn.sh

开启yarn    start-yarn.sh

 

hadoop 项目运行

1. 软编码方式

在编码中,没有将输入、输出路径,写死,通过在执行的时候,将路径指出。

2.硬编码方式

各种数据都在编码的时候已经指定过,不能进行更改的操作,直接运行jar 包

 hadoop jar BIGH-1.0-SNAPSHOT.jar com.sys.hadoop.mr.FOF.MyTQ

3. 打包配置

idear 打包的时候

 我这里写了两个项目,选择其中一个 的main 方法

将jar 包全部删除,只保留项目的编码

 apply 应用之后,会出现这个文件夹,选择的是那个main 方法,文件中显示的就是那个 main 方法的 java 类路径

一个项目中只能存在一个 MANIFEST.MF 文件,将该文件删除之后,才能再次选择其他的main 方法进行打包,

因为在运行项目的时候,需要制定main 方法的类路径,指定的路径,需要和MANIFEST.MF 文件中的 Main-Class 内容进行匹配

Exception in thread "main" java.lang.ClassNotFoundException: com.sys.hadoop.mr.tq.MyFof

4.打包

该项目使用的是maven 项目,在打包之前需要先进行编译操作。

前面设置完之后,需要先clean ,清除之前的文件

然后重新构建,否则在打包的时候会出现没有jar 的提示信息

 5. pom.xml 文件

将下面的内容复制到 pom 文件中, 否则在打包的时候会出现编码不匹配的问题

  1. <build>
  2. <plugins>
  3. <plugin>
  4. <groupId>org.apache.maven.plugins</groupId>
  5. <artifactId>maven-jar-plugin</artifactId>
  6. <version>2.2</version>
  7. <configuration>
  8. <archive>
  9. <manifestEntries>
  10. <Project-name>${project.name}</Project-name>
  11. <Project-version>${project.version}</Project-version>
  12. <!-- <Premain-Class>com.coderead.agent.AgentMain</Premain-Class>-->
  13. <!-- <Premain-Class>com.sys.insertPilepublic.AgentMain</Premain-Class>-->
  14. <!-- 需要打包的类的 -->
  15. <Premain-Class>com.sys.hadoop.mr</Premain-Class>
  16. <Can-Redefine-Classes>false</Can-Redefine-Classes>
  17. <Can-Retransform-Classes>false</Can-Retransform-Classes>
  18. </manifestEntries>
  19. </archive>
  20. <skip>true</skip>
  21. </configuration>
  22. </plugin>
  23. <plugin>
  24. <groupId>org.apache.maven.plugins</groupId>
  25. <artifactId>maven-compiler-plugin</artifactId>
  26. <version>2.3.2</version>
  27. <configuration>
  28. <source>1.8</source>
  29. <target>1.8</target>
  30. <encoding>utf8</encoding>
  31. </configuration>
  32. </plugin>
  33. </plugins>
  34. <resources>
  35. <resource>
  36. <directory>src/main/java</directory>
  37. <includes>
  38. <include>**/*.xml</include>
  39. </includes>
  40. <filtering>false</filtering>
  41. </resource>
  42. <resource>
  43. <directory>src/test/java</directory>
  44. <includes>
  45. <include>**/*.xml</include>
  46. </includes>
  47. <filtering>false</filtering>
  48. </resource>
  49. </resources>
  50. </build>

6. 再次运行正常

 

hadoop 集群再次运行步骤;

1. 防火墙

首先将集群的防火墙关闭(测试环境),如果在生产环境则需要在防火墙开放相应的端口

2. 开启 zookeeper 集群

3. 使用 start-dfs.sh 开启 hdfs 集群

4. 使用 start-yarn.sh 开启 yarn

5. 验证

使用 zkServer.sh status 查看zookeeper 集群是否正常运行

使用浏览器分别浏览 namenode 的主备节点 端口 9870

使用浏览器分别浏览 resourcemanager 的主备节点 端口为 8088

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Li_阴宅/article/detail/804594
推荐阅读
相关标签
  

闽ICP备14008679号