Hadoop起動エラーNoClassDefFoundError:javax / activation / DataSourceソリューション



Hadoop Startup Error Noclassdeffounderror



Hadoopが通常の起動を完了すると、jpsで次の5つのプロセスを確認できるはずです。



NameNode、SecondaryNameNode、DataNode、NodeManager、ResourceManager

ただし、NodeManagerとResourceManagerの2つのプロセスが起動していないことがわかりました。



ログを確認して、次のエラーを見つけました。

Caused by: java.lang.NoClassDefFoundError: javax/activation/DataSource Caused by: java.lang.ClassNotFoundException: javax.activation.DataSource

いくつかの解決策があります:

1. jdkを再インストールし、バージョン1.8を使用します。



2.インターネットで提供されている方法:yarn-env.shを変更し、次のコンテンツを追加します(3.2.1バージョンを試しましたが、役に立たないようです)。

export YARN_RESOURCEMANAGER_OPTS='--add-modules=ALL-SYSTEM' export YARN_NODEMANAGER_OPTS='--add-modules=ALL-SYSTEM'

3. Activation-1.1.1.jarをlibディレクトリに直接ダウンロードするか、ローカルで$ {HADOOP_HOME} / share / hadoop / yarn / libディレクトリにアップロードしてstart-yarn.shを再起動します。

cd ${HADOOP_HOME}/share/hadoop/yarn/lib wget https://repo1.maven.org/maven2/javax/activation/activation/1.1.1/activation-1.1.1.jar