我长期使用 Pentaho 数据集成的 Spoon 工具,它在我的系统上运行良好。但自从我将其移至/opt 我无法再次运行。我的系统上安装了 Oracle Java 8,每次尝试运行它时都会出现以下异常
Exception in thread "main" java.lang.NoClassDefFoundError: org/eclipse/swt/widgets/Composite
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2688)
at java.lang.Class.getMethod0(Class.java:2937)
at java.lang.Class.getMethod(Class.java:1771)
at org.pentaho.commons.launcher.Launcher.main(Launcher.java:149)
Caused by: java.lang.ClassNotFoundException: org.eclipse.swt.widgets.Composite
at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 5 more
请帮我解决这个错误,我还没有找到任何解决方案
最佳答案
我找到了这个问题的解决方案,我已经删除了 Kettle 生成的所有隐藏目录及其来自 /opt
的副本。然后我提取了新版本副本。之后,我将 /opt/data-integration
添加到我的路径变量中,并尝试从我的家运行它。虽然它没有成功运行,但它已经生成了运行它所需的所有依赖隐藏文件夹。然后我必须通过发出去该目录
cd /opt/data-integration
然后我通过发出成功运行它
sh spoon.sh
我必须进入该目录,因为 Pentaho 开发人员已通过在 spoon.sh
的主命令中放置启动器文件夹的相对路径来设置它。
关于java - 在 Ubuntu 14.04 64 位上运行 Spoon 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25903657/