收藏 分享(赏)

kettle7.1源码搭建.docx

上传人:weiwoduzun 文档编号:5728190 上传时间:2019-03-15 格式:DOCX 页数:27 大小:3.21MB
下载 相关 举报
kettle7.1源码搭建.docx_第1页
第1页 / 共27页
kettle7.1源码搭建.docx_第2页
第2页 / 共27页
kettle7.1源码搭建.docx_第3页
第3页 / 共27页
kettle7.1源码搭建.docx_第4页
第4页 / 共27页
kettle7.1源码搭建.docx_第5页
第5页 / 共27页
点击查看更多>>
资源描述

1、Kettle7.1 源码部署(开发)Kettle 是一个开源项目,作为 ETL 工具,kettle 提供了丰富的功能和简洁的图形化界面。作为免费开源的 ETL 工具,可以通过其桌面程序进行 ETL 步骤 的开发并执行。kettle 以插件形式来实现每个转换步骤的工作,发行版中已经提供了常用的转换清洗插件,如果还不能满足业务需求的话,则可以自己开发相应插件实现。但在使用原有插件或者自定义插件的过程中遇到问题时,如果不好定位原因,则可以通过源码环境来调试,可以更加方便和容易地解决问题。另外,通过源码的开发和学习,也能更加深入地理解 kettle 的原理。部署方式总共分为以下几步:、 下载源码和 k

2、ettle 桌面工具并解压到指定目录(注意版本对应)、 创建 java 项目(注意名称要和解压源码 的文件夹名称相同)、 创建 core、engine、dbdialog、engine、lib(lib 可以自定义名称)、 复制源码、 拷贝 lib、libswt、launcher、simple-jndi、 将 lib 下面的 jar 导入项目、 添加 libwt.jar 包、 创建 plugins 文件、1. 下载源码并解压从 https:/ 地址中选择要下载的源码,首先在 branch 中选择 master,然后在 Gags 中选择要下载的源码,最有点击 clone or download 进行

3、下载,这里我们选择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 PathUse as Source Folder 或者在项目的 Java B

4、uild Path 里面 选择 Source 选项卡,将四个文件夹添加进去)。如以此创建dbdialog、engine、ui、plugins 和 lib 文件夹,创建好的如4. 复制源码进入源码解压包,将 pentaho-kettle-7.1.0.2-Rcoresrc 下面的内容全部拷贝到项目的 core 文件夹下,同样,将engine、dbdialog、ui 三个文件夹 src 下的内容也分 别拷贝到项目对应的文件夹下。文件对应关系如下复制 core 文件复制 dbdialog复制 engine 文件复制 plugins复制UI文件(注意将ui/scr和assembly/package-re

5、s/ui两个文件夹下面的所有文件拷贝ui文件夹下面)5. 拷贝 lib,libswt,launcher,simple-jndi进入 kettle 桌面工具的解 压包,将 lib 文件夹(pentaho-kettle-7.1.0.2-Rlib)里面的 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-12libswt 目录下,对应操作系统的文件夹下的 swt.jar(本

6、文选择 kettle-engine-7.1.0.0-12libswtwin64swt.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-

7、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 文件夹在项目根目录下新建 plugins 文件夹,然后根据需要将工具包下的 plugins 里面的插件拷贝到 plugins 目录下(如

8、果不在项目下建立 plugins 目录,也可以在系统的 user_home/.kettle/下面创建 plugins 目录,比如在 C:UsersThink.kettlee 下面创建)。注意创建完 plugins 后先不要复制工具包 plugins 中的插件复制到源码目录下的 plugins 中,根据需要复制。至此环境搭建完毕,最后项目结构图如下至此该导入的包就导完了,但是项目上还是有错误,这是因为源码中有类名冲突,可以会看到项目中的 source folder 有这么一个特点:一个最后是 src,一个最后是 test。解决这个问题方法为:在把以 test 结尾的删除!切记勿删除。另外吐个槽,

9、每删掉一个Eclipse 的 building 真是太慢了,如果你等不及可以直接点击红方框结束它,等到删最后一个 test 结尾的源码包时再等待 building完成。9. 运行程序至此,源码基本部署完毕,首先将源码加入编译目录,可以在将 project clean 一遍,再 编译。定位到 Spoon.java 类 :/kettle-src/ui/org/pentaho/di/ui/spoon/Spoon.java,运行即可看到 kettle 的桌面程序了。至于 JVM 的参数(-Xms1024m -Xmx2048m 等),也可以在 Run Configurations 里面进行设置,具体大小

10、根据自己系统决定,比如:10.常见错误10.1 XsdValidator找到报错的类,如果是engine/src/org/pentaho/di/trans/steps/xsdvalidator下的 XsdValidator.java 报错的话,定位到报错的地方,将报错的代码改为SchemaFactory.newInstance(“http:/www.w3.org/2001/XMLSchema“);报错原因是 jdk 版本,jdk7 的版本取消了原代码中引用的那个 String 类型的常量。如果用 jdk6 或者 7 的 话,在 libs 中需要删掉两个 jar 包,build path 中也要

11、 remove 掉着两个,因为在 jdk6、7 版本中已经整合了,再次导入有冲突,这两个 jar 文件分别是 xml-apis.jar 和 xmlParserAPIs.jar,不用弄错了,因为 libs 中还有一个 xml-apis-ext.jar。10.2 eclipse 版本不支持 JDK1.8 的错误一、eclipse 之后就运行打开它 ,然后找到 Help - EclipseMarketplace 打开应用商店二、搜索 Java 8 Kepler,然后安装组建,安装完成后需要重启10.3 XMLParserFactoryProducer 报错编译的时候 XMLParserFactory

12、Producer 报错,报错的代码如下docBuilderFactory.setFeature( “http:/apache.org/xml/features/disallow-doctype-decl“, true );XML 文件的解析以及 XML 外部实体注入防护(http:/ “http:/www.xml.org/sax/features/external-general-entities“, true );11.总结一、下载源码和桌面工具包二、新建项目后,java 环境设置为 JDK1.8 或者 JRE1.8三、新建 core、engine、dbdialog、ui 四个文件夹后需要添

13、加为source folder,并拷贝源码包下面相应文件夹下的 src 下的内容到各个文件夹中,还需要拷贝源码包下 pentaho-kettle-7.1.0.2-Rassemblypackage-resui 里面的内容到 项目 ui 文件夹下四、添加工具包的 lib 下的 jar 以及 libswt 下对应平台的swt.jar,kettle-core、kettle-dbdialog、kettle-engine 开头的三个jar 不要添加的项目的 build path 中五、如果需要使用 plugins 里面的功能,还需要创建 plugins 目录并拷贝相应内容,自己开发的插件也需要放入 plugins 下(也可以放入 lib 下)六、调试模式下运行 Spoon 的话,可以进行断点调试,方便排查问题

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报