关于hadoop:hadoop配置配置伪分布无法启动ResourceManager

通过jps查看没有启动ResourceManager, 依照上面的门路查看日志

usr/local/Cellar/hadoop/3.2.1/libexec/logs/xxxresourcemanagerxxx.log 通过vscode关上

FATAL org.apache.hadoop.yarn.server.resourcemanager.ResourceManager: Error starting ResourceManager

org.apache.hadoop.yarn.webapp.WebAppException: Error starting http server

at org.apache.hadoop.yarn.webapp.WebApps$Builder.start(WebApps.java:443)

at org.apache.hadoop.yarn.server.resourcemanager.ResourceManager.startWepApp(ResourceManager.java:1231)

at org.apache.hadoop.yarn.server.resourcemanager.ResourceManager.serviceStart(ResourceManager.java:1340)

at org.apache.hadoop.service.AbstractService.start(AbstractService.java:194)

at org.apache.hadoop.yarn.server.resourcemanager.ResourceManager.main(ResourceManager.java:1535)

Caused by: java.io.IOException: Unable to initialize WebAppContext

at org.apache.hadoop.http.HttpServer2.start(HttpServer2.java:1177)

at org.apache.hadoop.yarn.webapp.WebApps$Builder.start(WebApps.java:439)

... 4 more

Caused by: com.google.inject.ProvisionException: Unable to provision, see the following errors:
1) Error injecting constructor, java.lang.NoClassDefFoundError: javax/activation/DataSource
at org.apache.hadoop.yarn.server.resourcemanager.webapp.JAXBContextResolver.<init>(JAXBContextResolver.java:41)

at org.apache.hadoop.yarn.server.resourcemanager.webapp.RMWebApp.setup(RMWebApp.java:54)

while locating org.apache.hadoop.yarn.server.resourcemanager.webapp.JAXBContextResolver
1 error

网上查一下, 是jdk版本导致, 我是用的jdk11, 说是jdk9之后就要怎么怎么解决.
网上给的通过批改hadoop-env.sh的形式,写--allxxx这种形式我试了也不胜利,所以间接还是装置jdk8就好了. (装置参考:mac实现不同版本jdk切换)

因为下面形式能够实现不同jdk切换, 然而还是会主动跳转到jdk11, 所以还是要批改hadoop-env.sh, 应用指定版本的jdk
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_261.jdk/Contents/Home

配置文件的地位如下

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理