在CentOS下发魄,我本來安裝的也是Kettle8.3舔箭,不過點(diǎn)擊connect卻一直報(bào)錯(cuò):
一個(gè)未預(yù)期的錯(cuò)誤發(fā)生在Spoon: probable cause:在停止Spoon前,請(qǐng)先關(guān)閉其它spoon窗口!
No more handles because no underlying browser available.
? SWT on GTK 2.x detected. It is reccomended to use SWT on GTK 3.x and Webkit2 API.
org.eclipse.swt.SWTError: No more handles because no underlying browser available.
? SWT on GTK 2.x detected. It is reccomended to use SWT on GTK 3.x and Webkit2 API.
at org.eclipse.swt.SWT.error(SWT.java:4621)
at org.eclipse.swt.browser.Browser.<init>(Browser.java:128)
at org.pentaho.di.ui.core.dialog.ThinDialog.createDialog(ThinDialog.java:77)
at org.pentaho.di.ui.repo.dialog.RepositoryDialog.openManager(RepositoryDialog.java:104)
at org.pentaho.di.ui.repo.menu.RepositoryConnectMenu$2$2.widgetSelected(RepositoryConnectMenu.java:180)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:252)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5797)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1374)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:5051)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4583)
at org.pentaho.di.ui.spoon.Spoon.readAndDispatch(Spoon.java:1384)
at org.pentaho.di.ui.spoon.Spoon.waitForDispose(Spoon.java:7949)
at org.pentaho.di.ui.spoon.Spoon.start(Spoon.java:9331)
at org.pentaho.di.ui.spoon.Spoon.main(Spoon.java:710)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.pentaho.commons.launcher.Launcher.main(Launcher.java:92)
所以我就嘗試使用kettle7.1點(diǎn)擊connect出現(xiàn)
Nomore handles [Unknown Mozilla path (MOZILLA_FIVE_HOME not set)]
org.eclipse.swt.SWTError:No more handles [Unknown Mozilla path (MOZILLA_FIVE_HOME not set)]
atorg.eclipse.swt.SWT.error(SWT.java:4109)
atorg.eclipse.swt.browser.Mozilla.initMozilla(Mozilla.java:1672)
atorg.eclipse.swt.browser.Mozilla.create(Mozilla.java:637)
atorg.eclipse.swt.browser.Browser.<init>(Browser.java:119)
atorg.eclipse.ui.internal.browser.BrowserViewer.<init>(BrowserViewer.java:225)
.......
繼續(xù)搜索茧痕,應(yīng)該是調(diào)用不了瀏覽器财岔,因?yàn)槲蚁肫鹪趙indow上kettle的歡迎界面是直接在kettle里顯示,而在centos下則是在瀏覽器中打開盏浇。
分析:從eclipse的官網(wǎng)大概知道:內(nèi)置游覽器要想在linux上跑有這兩方面的依賴:
Webkit和Xulrunner
檢查一下系統(tǒng)的/usr/lib下面確實(shí)沒有xulrunneryyu
于是在https://developer.mozilla.org/en-US/docs/Gecko_SDK下載xulrunner-sdk
得到一個(gè)這樣的文件:xulrunner-3.6.28.en-US.linux-i686.sdk.tar.bz2解壓一下
cd xulrunner-sdk/bin
./xulrunner–register-global //注冊(cè)一下xulrunner
重新啟動(dòng)一下eclipse,這時(shí)它的內(nèi)置游覽器就應(yīng)該可用了。
這時(shí)重新刪除MOZILLA_FIVE_HOME環(huán)境變量芽狗,內(nèi)置游覽器仍然可用绢掰,
說明MOZILLA_FIVE_HOME這個(gè)環(huán)境變量不是靠手動(dòng)來設(shè)置的,而是系統(tǒng)內(nèi)部已經(jīng)設(shè)定好的。
在之前一篇博客我有介紹安裝kettle滴劲,在那時(shí)我就安裝了Webkit攻晒,所以現(xiàn)在只需安裝xulrunner
這里下載了最新的安裝包,但是不能運(yùn)行班挖,不知道是什么原因鲁捏,考慮到他是ubuntu,我是centos萧芙,還是會(huì)有差異
根據(jù)系統(tǒng)的版本给梅,下載xulrunner
下載地址:
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?cm_mc_uid=08168416471414670141294&cm_mc_sid_50200000=1497942238
或者
http://ftp.mozilla.org/pub/xulrunner/releases/latest/sdk/
得到一個(gè)這樣的文件:xulrunner-1.9.2.28pre.en-US.linux-x86_64.tar解壓一下
//注冊(cè)一下xulrunner
./xulrunner –register-global
重啟一下kettle程序,再試connect双揪,可以了动羽。
這里我是訪問第一個(gè)下載地址直接下載了xulrunner解壓,然后注冊(cè)盟榴,可以運(yùn)行曹质。
之后重啟kettle婴噩,點(diǎn)擊connect擎场,發(fā)現(xiàn)可以跳出界面了,但是白屏
又搜索之几莽,按照這位大佬的方法:https://blog.csdn.net/ws379374000/article/details/88884656
cd data-integration/ui
vim menubar.xul
在31行加入
<menuitem id="file-openZiyuanku" label="openZiyuanku" command="spoon.openRepository()"/>
這里其實(shí)相當(dāng)于自己開了一個(gè)入口迅办,現(xiàn)在可以點(diǎn)擊左上角文件—>openZiyuanku,進(jìn)入資源庫連接了
安裝pdi8.0版本
修改spoon.sh章蚣,將
將export SWT_GTK3=0配置改為export SWT_GTK3=1即可解決這個(gè)問題站欺。
(最后一句話是重點(diǎn),一定要加上)