Kettle7.1源码部署

Kettle是一个开源项目,作为ETL工具,kettle提供了丰富的功能和简洁的图形化界面。作为免费开源的ETL工具,可以通过其桌面程序进行ETL步骤的开发并执行。kettle以插件形式来实现每个转换步骤的工作,发行版中已经提供了常用的转换清洗插件,如果还不能满足业务需求的话,则可以自己开发相应插件实现。但在使用原有插件或者自定义插件的过程中遇到问题时,如果不好定位原因,则可以通过源码环境来调试,可以更加方便和容易地解决问题。另外,通过源码的开发和学习,也能更加深入地理解kettle的原理。
部署方式总共分为以下几步:
一、下载源码和kettle桌面工具并解压到指定目录(注意版本对应)
二、创建java项目(注意名称要和解压源码的文件夹名称相同)
三、创建core、engine、dbdialog、engine、lib(lib可以自定义名称)
四、复制源码
五、拷贝lib、libswt、launcher、simple-jndi
六、将lib下面的jar导入项目
七、添加libwt.jar包
八、创建plugins文件
九、运行项目
十、报错解决方案
1.下载源码并解压
https://github.com/pentaho/pentaho-kettle 地址中选择要下载的源码,首先在branch中选择 master,然后在Gags中选择要下载的源码,最有点击 clone or download 进行下载,这里我们选择download zip格式下载,或者在云盘下载 。如下:
这里写图片描述
这里写图片描述
这里写图片描述
2.创建java 项目
在eclipse 中创建一个空的java project,如下:
这里写图片描述
这里写图片描述
注意kettle7的版本用JDK1.8,项目名称要和解压的源码文件夹名称相同,如下:
这里写图片描述
这里写图片描述
3.创建core、engine、dbdialog、ui
在kettle-src根目录下,新建core、engine、dbdialog、ui四个文件夹(注意是文件夹,非package!),并将四个文件夹设置为source folder(在文件夹上右键点击>>Build Path>>Use as Source Folder或者在项目的Java Build Path里面选择Source选项卡,将四个文件夹添加进去)。如下:
这里写图片描述
这里写图片描述
这里写图片描述
以此创建dbdialog、engine、ui、plugins和lib文件夹,创建好了。但是需要如下操作。原因:需要创建的文件夹生成src的包文件夹。
这里写图片描述

上一张图片可以不看,下一张才重要

这里写图片描述
4.复制源码
进入源码解压包,将pentaho-kettle-7.1.0.2-R`core\src下面的内容全部拷贝到项目的core文件夹下,同样,将engine、dbdialog、ui三个文件夹src下`的内容也分别拷贝到项目对应的文件夹下。文件对应关系如下:
复制core文件

这里写图片描述

复制dbdialog

这里写图片描述

复制engine文件

这里写图片描述

复制plugins(注意将pentaho-kettle-7.1.0.2-R/plugin文件夹下面的所有文件拷贝plugins文件夹下面,不需要将plugins变成src的java包,普通的文件夹就可以与lib一样

这里写图片描述

复制UI文件(注意将ui/scr和assembly/package-res/ui两个文件夹下面的所有文件拷贝ui文件夹下面

这里写图片描述

5.拷贝lib,libswt,launcher,simple-jndi
进入kettle桌面工具的解压包,将lib文件夹(pentaho-kettle-7.1.0.2-R\lib)注意下载地址:https://community.hitachivantara.com/external-link.jspa?url=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fpentaho%2Ffiles%2FData%2520Integration%2F7.1%2Fpdi-ce-7.1.0.0-12.zip%2Fdownload里面的jar全部拷贝到项目根目录下,并删除kettle-core-7.1.0.0-12.jar、kettle-dbdialog-7.1.0.0-12.jar、kettle-engine-7.1.0.0-12.jar三个jar包,再将kettle-engine-7.1.0.0-12\libswt目录下,对应操作系统的文件夹下的swt.jar(本文选择kettle-engine-7.1.0.0-12\libswt\win64\swt.jar)拷贝到项目的libs下,最后将libs下所有的jar包添加到项目的build path中。拷贝发布版本下面的lib、libwt、launcher、simple_jndi四个文件夹拷贝到java项目的根目录下面。如下:
这里写图片描述
这里写图片描述
其中lib下面的都是kettle的依赖包,选择打包好的。
6.将lib下面的jar 包导入项目
将项目lib下面的jar包导入下面,注意要取消kettle-core.xxx.jar ,kettle-bddialog.xxx.jar,kettle-engine.xxx.jar。如下:
这里写图片描述
选中lib下面的所有jar包,去掉kettle-core.xxx.jar ,kettle-bddialog.xxx.jar,kettle-engine.xxx.jar这三个,然后鼠标右键在弹出对话框中选择 Build Path 中的 Add to Build Path就可以添加。添加好的如下:
这里写图片描述
7.添加libwt.jar包
根据操作系统的版本和位数选择相应的libwt.jar包。如下:
这里写图片描述
这里写图片描述
8.创建plugins文件夹(同第4步操作一样
在项目根目录下新建plugins文件夹,然后根据需要将工具包下的plugins里面的插件拷贝到plugins目录下(如果不在项目下建立plugins目录,也可以在系统的user_home/.kettle/下面创建plugins目录,比如在C:\Users\Think.kettlee下面创建)。注意创建完plugins后先不要复制工具包plugins中的插件复制到源码目录下的plugins中,根据需要复制。至此环境搭建完毕。最终目录结构如下:
这里写图片描述
9.运行项目
至此,源码基本部署完毕,首先将源码加入编译目录,可以在将project clean一遍,再编译。如下:
这里写图片描述
定位到Spoon.java类:
/kettle-src/ui/org/pentaho/di/ui/spoon/Spoon.java,运行即可看到kettle的桌面程序了。至于JVM的参数(-Xms1024m -Xmx2048m等),也可以在Run Configurations里面进行设置,具体大小根据自己系统决定,如下:
这里写图片描述
这里写图片描述
10.报错解决方案
这里写图片描述

11.详细请下载此文档

地址:https://download.csdn.net/download/qq_32447301/10564457

猜你喜欢

转载自blog.csdn.net/qq_32447301/article/details/81212413