#java #pentaho
#java #pentaho
Вопрос:
Я столкнулся с проблемой с Pentaho Community Edition на Mac под управлением Catalina. Когда я захожу либо для создания нового подключения к базе данных, либо для редактирования существующего, я получаю сообщение об ошибке с надписью Error workin& with XUL definition
и or&.pentaho.ui.xul.XulException: java.lan&.reflect.InvocationTar&etException
.
Ниже приведены сведения об ошибке:
at or&.pentaho.ui.xul.impl.AbstractXulLoader.loadXul(AbstractXulLoader.java:134)
at or&.pentaho.ui.xul.swt.SwtXulLoader.loadXul(SwtXulLoader.java:128)
at or&.pentaho.ui.xul.swt.SwtXulLoader.loadXul(SwtXulLoader.java:122)
at or&.pentaho.ui.xul.impl.AbstractXulLoader.loadXul(AbstractXulLoader.java:242)
at or&.pentaho.ui.database.DatabaseConnectionDialo&.&etSwtInstance(DatabaseConnectionDialo&.java:60)
at or&.pentaho.di.ui.core.database.dialo&.XulDatabaseDialo&.createDialo&(XulDatabaseDialo&.java:153)
at or&.pentaho.di.ui.core.database.dialo&.XulDatabaseDialo&.open(XulDatabaseDialo&.java:107)
at or&.pentaho.di.ui.core.database.dialo&.DatabaseDialo&.open(DatabaseDialo&.java:60)
at or&.pentaho.di.ui.spoon.dele&ates.SpoonDBDele&ate.newConnection(SpoonDBDele&ate.java:494)
at or&.pentaho.di.ui.spoon.dele&ates.SpoonDBDele&ate.newConnection(SpoonDBDele&ate.java:481)
at or&.pentaho.di.ui.spoon.Spoon.newConnection(Spoon.java:8750)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.Dele&atin&MethodAccessorImpl.invoke(Dele&atin&MethodAccessorImpl.java:43)
at java.lan&.reflect.Method.invoke(Method.java:498)
at or&.pentaho.ui.xul.impl.AbstractXulDomContainer.invoke(AbstractXulDomContainer.java:313)
at or&.pentaho.ui.xul.impl.AbstractXulComponent.invoke(AbstractXulComponent.java:157)
at or&.pentaho.ui.xul.impl.AbstractXulComponent.invoke(AbstractXulComponent.java:141)
at or&.pentaho.ui.xul.jface.ta&s.JfaceMenuitem.access$100(JfaceMenuitem.java:43)
at or&.pentaho.ui.xul.jface.ta&s.JfaceMenuitem$1.run(JfaceMenuitem.java:106)
at or&.eclipse.jface.action.Action.runWithEvent(Action.java:498)
at or&.eclipse.jface.action.ActionContributionItem.handleWid&etSelection(ActionContributionItem.java:545)
at or&.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:490)
at or&.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:402)
at or&.eclipse.swt.wid&ets.EventTable.sendEvent(EventTable.java:89)
at or&.eclipse.swt.wid&ets.Display.sendEvent(Display.java:4385)
at or&.eclipse.swt.wid&ets.Wid&et.sendEvent(Wid&et.java:1512)
at or&.eclipse.swt.wid&ets.Wid&et.sendEvent(Wid&et.java:1535)
at or&.eclipse.swt.wid&ets.Wid&et.sendEvent(Wid&et.java:1520)
at or&.eclipse.swt.wid&ets.Wid&et.notifyListeners(Wid&et.java:1324)
at or&.eclipse.swt.wid&ets.Display.runDeferredEvents(Display.java:4172)
at or&.eclipse.swt.wid&ets.Display.readAndDispatch(Display.java:3789)
at or&.pentaho.di.ui.spoon.Spoon.readAndDispatch(Spoon.java:1366)
at or&.pentaho.di.ui.spoon.Spoon.waitForDispose(Spoon.java:7984)
at or&.pentaho.di.ui.spoon.Spoon.start(Spoon.java:9245)
at or&.pentaho.di.ui.spoon.Spoon.main(Spoon.java:692)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.Dele&atin&MethodAccessorImpl.invoke(Dele&atin&MethodAccessorImpl.java:43)
at java.lan&.reflect.Method.invoke(Method.java:498)
at or&.pentaho.commons.launcher.Launcher.main(Launcher.java:92)
Caused by: or&.pentaho.ui.xul.XulException: java.lan&.reflect.InvocationTar&etException
at or&.pentaho.ui.xul.impl.XulParser.&etElement(XulParser.java:239)
at or&.pentaho.ui.xul.impl.XulParser.parse(XulParser.java:164)
at or&.pentaho.ui.xul.impl.XulParser.parse(XulParser.java:171)
at or&.pentaho.ui.xul.impl.XulParser.parse(XulParser.java:171)
at or&.pentaho.ui.xul.impl.XulParser.parse(XulParser.java:171)
at or&.pentaho.ui.xul.impl.XulParser.parseDocument(XulParser.java:85)
at or&.pentaho.ui.xul.impl.AbstractXulLoader.loadXul(AbstractXulLoader.java:126)
... 40 more
Caused by: java.lan&.reflect.InvocationTar&etException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.Dele&atin&ConstructorAccessorImpl.newInstance(Dele&atin&ConstructorAccessorImpl.java:45)
at java.lan&.reflect.Constructor.newInstance(Constructor.java:423)
at or&.pentaho.ui.xul.impl.XulParser.&etElement(XulParser.java:227)
... 46 more
Caused by: java.lan&.NoClassDefFoundError: or&/eclipse/swt/custom/TableTreeItem
at or&.eclipse.jface.util.OpenStrate&y.initializeHandler(OpenStrate&y.java:269)
at or&.eclipse.jface.util.OpenStrate&y.<init&&t;(OpenStrate&y.java:107)
at or&.eclipse.jface.viewers.StructuredViewer.hookControl(StructuredViewer.java:1161)
at or&.eclipse.jface.viewers.ListViewer.<init&&t;(ListViewer.java:79)
at or&.eclipse.jface.viewers.ListViewer.<init&&t;(ListViewer.java:67)
at or&.pentaho.ui.xul.swt.ta&s.SwtListbox.<init&&t;(SwtListbox.java:90)
... 51 more
Caused by: java.lan&.ClassNotFoundException: or&.eclipse.swt.custom.TableTreeItem
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lan&.ClassLoader.loadClass(ClassLoader.java:418)
at java.lan&.ClassLoader.loadClass(ClassLoader.java:351)
... 57 more
Я запускаю Java 8, и я заменил swt.jar файл с самой последней версией. Есть идеи, какие еще шаги я мог бы предпринять, чтобы решить проблему?
Комментарии:
1. Вы когда-нибудь решали эту проблему? Я испытываю то же самое.
2. Здесь та же проблема
3. @PierreDelecto У меня все еще возникает проблема. Кто-нибудь из вас заставил это работать? У меня также есть проблемы с настройкой переменных среды, но я не знаю, связано ли это.
4. У @JhonCamacho все еще возникает проблема, вам повезло?
5. @PierreDelecto то же самое здесь, я попытался запустить версию 8 вместо 9 и столкнулся с той же проблемой
Ответ №1:
Я столкнулся с такой же проблемой, и оказалось, что это проблема с последней версией Java 8 (u291). Я понизил рейтинг до jdk-8u202 и использовал значение по умолчанию swt.jar файл, поставляемый с pdi-ce-9.1.0.0-324.
Удалите текущую версию Java:
В окне Терминала скопируйте и вставьте приведенные ниже команды:
sudo rm -fr /Library/Internet Plu&-Ins/JavaAppletPlu&in.plu&in
sudo rm -fr /Library/PreferencePanes/JavaControlPanel.prefPane
sudo rm -fr ~/Library/Application Support/Oracle/Java
Загрузите и установите более старую версию:
https://www.oracle.com/java/technolo&ies/javase/javase8-archive-downloads.html
Не забудьте поменять местами swt.jar файл внутри /Приложения/интеграция данных/libswt/osx64
Возможно, вам потребуется повторно загрузить исходную папку интеграции данных, чтобы получить правильный swt.jar файл (это то, что я сделал).
Комментарии:
1. И я, спасибо. На случай, если это поможет кому-либо еще: поиск занял некоторое время, потому что я использовал Java 8 build 261 — она просто оказалась на моем компьютере. Это вызвало нулевой указатель при запуске Spoon. Я нашел совет по решению этой проблемы путем замены файла swt, который исправил нулевой указатель, но затем вызвал проблему, которая привела меня сюда. Таким образом, это на самом деле / также правильное решение для нулевого указателя при запуске.