私はhadoopの新機能です。私はnetbeans環境でJavaコードからhadoopのtoolrunnerによって仕事を実行しようとしています。しかし、私はまだ問題を解決するための解決策を見つけることができません。java.lang.NoClassDefFoundError:javax/security/auth/kerberos/KeyTab
Exception in thread "main" java.lang.NoClassDefFoundError: javax/security/auth/kerberos/KeyTab at org.apache.hadoop.security.UserGroupInformation.(UserGroupInformation.java:609) at org.apache.hadoop.security.UserGroupInformation.loginUserFromSubject(UserGroupInformation.java:799) at org.apache.hadoop.security.UserGroupInformation.getLoginUser(UserGroupInformation.java:760) at org.apache.hadoop.security.UserGroupInformation.getCurrentUser(UserGroupInformation.java:633) at org.apache.hadoop.fs.FileSystem$Cache$Key.(FileSystem.java:2812) at org.apache.hadoop.fs.FileSystem$Cache$Key.(FileSystem.java:2802) at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2668) at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:371) at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:170) at org.enahang.mapreduce.utils.mrUtils.Test.run(Test.java:125) at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) at org.enahang.mapreduce.utils.mrUtils.Test.main(Test.java:62)
私のプラットフォームは、私は多くのライブラリを追加したWindows 7の
です。まず第一に、私はその後、私は Javaee-api-7.0.jar
java-rt-jar-stubs-1.5.0.jar
... 類似した他の多くのライブラリを追加 Apacheds-kerberos-codec-2.0.0-M15.jar
を追加しました。しかし、私はエラーが発生しどこからか分かりません。
これは私がコードでKeytabのクラスを含めるために追加の.jarファイルの完全なリストである:事前に apacheds-i18n-2.0.0-M15.jar
api-asn1-api-1.0.0-M20.jar
api-util-1.0.0-M20.jar
commons-cli-1.2.jar
commons-codec-1.4.jar
commons-collections-3.2.1.jar
commons-configuration-1.6.jar
jsp-api-2.1.jar
hadoop-auth-2.7.0.jar
おかげ
このエラーが発生する前に、私のhadoopコアはhadoop-core-1.2.1.jarでした。しかし、win7の読み込み/書き込みの許可の誤りやhadoop-0.20.2-core.jarの使用に関するヒントのため、最初のjarを削除してから2番目のjarを追加しました –
私はこの問題を'hadoop-conf-kerberos-6.0.0.jar'を追加します。しかし、新しいエラーが発生します: "java.lang.IllegalArgumentException:Kerberos領域を取得できません" –