Knox错误:java.lang.reflect.InvocationTargetException

时间:2015-01-28 09:32:42

标签: java hadoop hortonworks-data-platform knox-amazon-s3-client

在Hortonworks Hadoop 2.1.5上安装和设置Knox时出现以下错误。

我已经安装了java jdk-7u65-linux-x64.tar.gz

SGSCAI0081:~ # su -l knox -c '/usr/lib/knox/bin/gateway.sh setup'
***************************************************************************************************
You have indicated that you would like to persist the master secret for this service instance.
Be aware that this is less secure than manually entering the secret on startup.
The persisted file will be encrypted and primarily protected through OS permissions.
***************************************************************************************************
Enter master secret:
Enter master secret again:
Exception in thread "main" java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
        at java.lang.reflect.Method.invoke(Method.java:611)
        at org.apache.hadoop.gateway.launcher.Invoker.invokeMainMethod(Invoker.java:70)
        at org.apache.hadoop.gateway.launcher.Invoker.invoke(Invoker.java:39)
        at org.apache.hadoop.gateway.launcher.Command.run(Command.java:101)
        at org.apache.hadoop.gateway.launcher.Launcher.run(Launcher.java:69)
        at org.apache.hadoop.gateway.launcher.Launcher.main(Launcher.java:46)
Caused by: java.lang.NoClassDefFoundError: sun.security.x509.X509CertImpl
        at java.lang.J9VMInternals.verifyImpl(Native Method)
        at java.lang.J9VMInternals.verify(J9VMInternals.java:72)
        at java.lang.J9VMInternals.verify(J9VMInternals.java:70)
        at java.lang.J9VMInternals.initialize(J9VMInternals.java:134)
        at org.apache.hadoop.gateway.services.DefaultGatewayServices.init(DefaultGatewayServices.java:59)
        at org.apache.hadoop.gateway.GatewayServer.main(GatewayServer.java:110)
        ... 9 more
Caused by: java.lang.ClassNotFoundException: sun.security.x509.X509CertImpl
        at java.net.URLClassLoader.findClass(URLClassLoader.java:434)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:660)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:626)
        ... 15 more

1 个答案:

答案 0 :(得分:1)

这可能是由于使用Java 8而不是Java 7.即使您已经安装了Java 7 - 也许您仍然将JAVA_HOME设置为Java 8?