0

ケトルの変換で数式を追加しています。その式のプロパティで、式のテキストフィールドをクリックすると、エラーが発生します。

org.eclipse.swt.SWTError: No more handles [MOZILLA_FIVE_HOME=''] (java.lang.UnsatisfiedLinkError: Could not load SWT library. Reasons: 
no swt-mozilla-gtk-3740 in java.library.path
no swt-mozilla-gtk in java.library.path
/home/ron/.swt/lib/linux/x86/libswt-mozilla-gtk-3740.so: libxpcom.so: cannot open shared object file: No such file or directory
Can't load library: /home/ron/.swt/lib/linux/x86/libswt-mozilla-gtk.so)
at org.eclipse.swt.SWT.error(Unknown Source)
at org.eclipse.swt.browser.Mozilla.initMozilla(Unknown Source)
at org.eclipse.swt.browser.Mozilla.create(Unknown Source)
at org.eclipse.swt.browser.Browser.<init>(Unknown Source)
at org.pentaho.libformula.ui.editor.LibFormulaEditor.<init>(LibFormulaEditor.java:198)
at org.pentaho.di.ui.trans.steps.formula.FormulaDialog$3.widgetSelected(FormulaDialog.java:219)
at org.pentaho.di.ui.core.widget.TableView.editText(TableView.java:1940)
at org.pentaho.di.ui.core.widget.TableView.edit(TableView.java:1895)
at org.pentaho.di.ui.core.widget.TableView.edit(TableView.java:1867)
at org.pentaho.di.ui.core.widget.TableView.editSelected(TableView.java:1326)
at org.pentaho.di.ui.core.widget.TableView.access$3000(TableView.java:107)
at org.pentaho.di.ui.core.widget.TableView$26.mouseDown(TableView.java:949)
at org.eclipse.swt.widgets.TypedListener.handleEvent(Unknown Source)
at org.eclipse.swt.widgets.EventTable.sendEvent(Unknown Source)
at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Unknown Source)
at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source)
at org.pentaho.di.ui.trans.steps.formula.FormulaDialog.open(FormulaDialog.java:282)
at org.pentaho.di.ui.spoon.delegates.SpoonStepsDelegate.editStep(SpoonStepsDelegate.java:136)
at org.pentaho.di.ui.spoon.Spoon.editStep(Spoon.java:7835)
at org.pentaho.di.ui.spoon.trans.TransGraph.editStep(TransGraph.java:2749)
at org.pentaho.di.ui.spoon.trans.TransGraph.mouseDoubleClick(TransGraph.java:705)
at org.eclipse.swt.widgets.TypedListener.handleEvent(Unknown Source)
at org.eclipse.swt.widgets.EventTable.sendEvent(Unknown Source)
at org.eclipse.swt.widgets.Widget.sendEvent(Unknown Source)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Unknown Source)
at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source)
at org.pentaho.di.ui.spoon.Spoon.readAndDispatch(Spoon.java:1221)
at org.pentaho.di.ui.spoon.Spoon.waitForDispose(Spoon.java:7044)
at org.pentaho.di.ui.spoon.Spoon.start(Spoon.java:8304)
at org.pentaho.di.ui.spoon.Spoon.main(Spoon.java:580)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.pentaho.commons.launcher.Launcher.main(Launcher.java:134)
Caused by: java.lang.UnsatisfiedLinkError: Could not load SWT library. Reasons: 
no swt-mozilla-gtk-3740 in java.library.path
no swt-mozilla-gtk in java.library.path
/home/ron/.swt/lib/linux/x86/libswt-mozilla-gtk-3740.so: libxpcom.so: cannot open shared object file: No such file or directory
Can't load library: /home/ron/.swt/lib/linux/x86/libswt-mozilla-gtk.so

at org.eclipse.swt.internal.Library.loadLibrary(Unknown Source)
at org.eclipse.swt.internal.Library.loadLibrary(Unknown Source)
... 35 more

/home/ron/.swt/lib/linux/ファイルがあることを確認しているときlibswt-mozilla-gtk-3740.so

解決策を教えてください

4

2 に答える 2

5

この機能の動作を妨げる問題がいくつかあります。根本的な原因は、オペレーティング システムにインストールされている 2 つのブラウザのいずれかを必要とする SWT 機能を Pentaho が使用していることです。このよくある質問 ( http://www.eclipse.org/swt/faq.php#browserlinux ) を参照してください。私の場合、Java コマンド ラインに VM オプションを追加して、WebKitGTK (webkit) と Mozilla Firefox (mozilla) のどちらを使用するかを選択する必要があります。

-Dorg.eclipse.swt.browser.DefaultType=mozilla

私のシステム、Ubuntu 14.04 では、webkit ブラウザーが libsoup でエラーを引き起こすため、これを mozilla に設定する必要があります。Pentaho と同様に、SWT も使用する Eclipse の libsoup エラーについては、 https: //bugs.launchpad.net/ubuntu-gnome/+bug/1163501を参照してください。

次に、システムに mozilla firefox が存在する必要があり、mozilla XUL ランナー ライブラリも必要です。最初にFirefoxをインストールしてください:

apt-get install firefox

XUL runner 1.9.2 をインストールします。2.0.0 以降は互換性がないと言われているためです ( http://jira.pentaho.com/browse/PDI-8730を参照)。

wget http://ftp.mozilla.org/pub/mozilla.org/xulrunner/nightly/2012/03/2012-03-02-03-32-11-mozilla-1.9.2/xulrunner-1.9.2.28pre.en-US.linux-x86_64.tar.bz2

tar -xjf xulrunner-1.9.2.28pre.en-US.linux-x86_64.tar.bz2

mv xulrunner /opt/xulrunner-1.9.2

この VM オプションを使用して xulrunner パスを構成します。

-Dorg.eclipse.swt.browser.XULRunnerPath=/opt/xulrunner-1.9.2

また、 xulrunner を指すように LD_LIBRARY_PATH と MOZILLA_FIVE_HOME を構成する必要があります。

MOZILLA_FIVE_HOME=/opt/xulrunner-1.9.2 LD_LIBRARY_PATH=${MOZILLA_FIVE_HOME}:${LD_LIBRARY_PATH}

Spoon.sh の最終設定は次のとおりです。

(spoon.sh、13行目あたり) MOZILLA_FIVE_HOME=/opt/xulrunner-1.9.2 LD_LIBRARY_PATH=${MOZILLA_FIVE_HOME}:${LD_LIBRARY_PATH}

(spoon.sh、184行目あたり) if [ -z "$PENTAHO_DI_JAVA_OPTIONS" ]; then PENTAHO_DI_JAVA_OPTIONS="-Xmx512m -XX:MaxPermSize=256m -Dorg.eclipse.swt.browser.DefaultType=mozilla -Dorg.eclipse.swt.browser.XULRunnerPath=/opt/xulrunner-1.9.2" fi

于 2014-06-17T09:42:40.853 に答える