我正在使用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
请帮我解决此错误,但尚未找到任何解决方案
答案 0 :(得分:1)
我找到了解决这个问题的方法我删除了Kettle生成的所有隐藏目录以及/opt
的副本。然后我提取了新的版本副本。之后我将/opt/data-integration
添加到我的路径变量中,并尝试从我的家中运行它。虽然它不是一个成功的运行,但它已生成运行它所需的所有依赖隐藏文件夹。然后我必须通过发出
cd /opt/data-integration
然后我成功通过发布
来运行它sh spoon.sh
我必须转到该目录,因为Pentaho开发人员通过在spoon.sh
的主命令中放置启动器文件夹的相对路径来设置它。