步骤一:源码maven工程导入
github下载tag源码zip包
https://github.com/pentaho/pentaho-kettle/tree/8.2.0.0-R
先修改assembles文件夹下的子项目plugins的pom.xml依赖
注释掉依赖:(google-bigquery-plugin这个插件已经下载不了了)
<!--<dependency>
<groupId>org.pentaho.di.plugins</groupId>
<artifactId>google-bigquery-plugin</artifactId>
<version>${
google-bigquery-plugin.version}</version>
<type>zip</type>
<exclusions>
<exclusion>
<groupId>*</groupId>
<artifactId>*</artifactId>
</exclusion>
</exclusions>
</dependency>-->
导入该maven根项目,耗时比较长,取决于网络。
笔者小技巧:
如果卡在某个文件的下载,最好断网,然后迅速连上网,往复直到项目导入完毕,再删除maven库中的.lastUpdated文件,然后update maven project,如此往复,直到仓库中没有.lastUpdated文件。
步骤二:解决启动异常
异常1:
项目导入完成后,启动:kettle-ui-swt下的Spoon类
报错:
Error:(1822, 72) java: 无法访问org.eclipse.core.commands.common.EventManager
找不到org.eclipse.core.commands.common.EventManager的类文件
原因:在eclipse中不会出现,但在idea中出现。具体原因未知
解决方案:手动搜索EventManager并复制至kettle-ui-swt下,包路径和jar包中的保持一致
异常2:
继续启动:
报错:
java.lang.UnsatisfiedLinkError: Could not load SWT library. Reasons:
no swt-gtk-4623 in java.library.path
no swt-gtk in java.library.path
Can't load library: C:\Users\abin\.swt\lib\win32\x86_64\swt-gtk-4623.dll
Can't load library: C:\Users\abin\.swt\lib\win32\x86_64\swt-gtk.dll
at org.eclipse.swt.internal.Library.loadLibrary(Unknown Source)
at org.eclipse.swt.internal.Library.loadLibrary(Unknown Source)
at org.eclipse.swt.internal.C.<clinit>(Unknown Source)
at org.eclipse.swt.internal.Converter.wcsToMbcs(Unknown Source)
at org.eclipse.swt.internal.Converter.wcsToMbcs(Unknown Source)
at org.eclipse.swt.widgets.Display.<clinit>(Unknown Source)
at org.pentaho.di.ui.spoon.Spoon.main(Spoon.java:664)
原因:swt相关依赖默认为linux环境,需要修改为win环境,笔者的机器为win10 64位 专业版
解决方案:全局搜索org.eclipse.swt.gtk.linux.x86_64,全部替换为org.eclipse.swt.win32.win32.x86_64,
注意:全部替换后会对之后的install 操作编译打包有一点点影响,导致失败。
解决方案:使用源码zip包,还原当前根项目assembles文件夹下的所有文件(其实只要还原几个xml就
好了,直接全部还原是为了省事)
出现许多jar包冲突信息可以忽略,不影响启动
异常3:
继续启动:
报错:
2020/01/12 16:24:43 - General - ERROR (version Unknown, build 0 from 2020/01/12 16:24:41.049 by abin) : Error initializing transformation
2020/01/12 16:24:43 - General - ERROR (version Unknown, build 0 from 2020/01/12 16:24:41.049 by abin) : org.pentaho.ui.xul.XulException: Can not locate Xul document [ui/spoon.xul]
2020/01/12 16:24:43 - General - at org.pentaho.ui.xul.impl.AbstractXulLoader.findDocument(AbstractXulLoader.java:512)
2020/01/12 16:24:43 - General - at org.pentaho.ui.xul.impl.AbstractXulLoader.loadXul(AbstractXulLoader.java:229)
2020/01/12 16:24:43 - General - at org.pentaho.di.ui.spoon.Spoon.init(Spoon.java:865)
2020/01/12 16:24:43 - General - at org