01_kettle源码部署
一 kettle源码部署概述
(下图gif动画,如果没显示请刷新几次)
二 具体操作步骤
1.源码下载
2. 创建java工程,并创建五个源码文件夹core,dbdialog,engine,ui,plugins,和一个lib文件夹:
3.复制源码到项目的文件夹下,文件复制路径映射关系如下:
| 源码根目录 | 项目文件根目录 | 备注 |
| .\core\src | .\core | |
| .\dbdialog\src | .\dbdialog | |
| .\engine\src | .\engine | |
| .\plugins\src | .\plugins | |
| .\ui\src .\assembly\package-res\ui |
.\ui | 这里注意,是两个文件夹,一个源码,一个是资源文件 |
3.1 演示复制core,dbdialog文件夹的源码如下
(下图gif动画,如果没显示请刷新几次):
3.2 演示复制ui文件夹
(下图gif动画,如果没显示请刷新几次):
4.将发行版kettle工具免安装包的lib,libswt,launcher,simple-jndi 四个文件夹拷贝至java项目的根目录
其中lib 文件夹放的都是项目依赖的jar包。用kettle打包好的比较省事。
(下图gif动画,如果没显示请刷新几次)
5. 将lib下的jar加入到编译目录。
注意:
1.去掉kettle-core.xxx.jar ,kettle-bddialog.xxx.jar,kettle-engine.xxx.jar。
2.根据系统的位数选择libswt.jar add to build path
(下图gif动画,如果没显示请刷新几次):
6. 部署完成,编译源码
到这里就基本完成部署了,接下来将源码编译一遍。
首先将源码加入编译目录,可以在将project clean一遍,再编译。
(下图gif动画,如果没显示请刷新几次):
7.成功弹出kettle客户端
好啦,就这简单。部署成功啦!!!
(下图gif动画,如果没显示请刷新几次)
本次工程压缩包:
由于CSDN有文件上传大小限制,所以将工程打包成三个包,解压放到一起就好了:
kettle(6.1.0.1-196 MyEclipse源码工程包)part1
kettle(6.1.0.1-196 MyEclipse源码工程包)part2
kettle(6.1.0.1-196 MyEclipse源码工程包)part3
注意:
1.工程解压后删除lib文件夹下的 kettle-core.xxx.jar ,kettle-bddialog.xxx.jar,kettle-engine.xxx.jar,然后add to build path,如果在reference_library中已经存在相应的jar包,为了版本统一请先清空reference_library,然后把lib文件夹下的jar都add进去。
2.根据系统的位数选择libswt.jar 并 add to build path。
我的源码的成功部署很感谢kettle俱乐部qq群中的“成都-空山苦水禅人”无私帮助,他的无私也鼓励我花时间将自己会的一些东西(虽然不足挂齿)分享给大家。
后期希望自己在kettle的源码学习上取得进步。谢谢大家。
01_kettle源码部署的更多相关文章
- java源码部署
环境:nginx+tomcat部署方式:源码部署源码目录 /chroot2/test/schedule 目录下面就是所有源码了tomcat 位置: /usr/local/tomcat/apache-t ...
- Openfire4源码部署到eclipse中并编译
Openfire4源码部署到eclipse中并编译 概述 Openfire是众所周知的基于xmpp协议的IM开源服务,所有操作,配置,监控,调试等以B/S方式进行展示,非常的方便管理员进行管理.它的强 ...
- mondrian 4.7 源码部署
mondrian是一个开源的数据分析工程, 网上有关mondrian3.X的源码部署比较多, 有关4.X的部署较少. 目前官方推荐使用的时mondrian3.7的修订版, 可以再github上下载到最 ...
- 单点登录(六)-----遇到问题-----cas server 源码部署导入gradle后有感叹号---错误信息A cycle was detected in the build path of pr
cas server 源码部署导入gradle后有感叹号---错误信息A cycle was detected in the build path of project 'cas-server-cor ...
- 单点登录(五)-----遇到问题-----cas server 源码部署tomcat运行报错BeanCreationException:Error creating bean with name 's
我们在上一篇文章已经解决了把下载好的cas server源码部署到tomcat缺少子项目编辑文件或者jar包导致找不到class报错的问题 单点登录(四)-----遇到问题-----cas serve ...
- 单点登录(四)-----遇到问题-----cas server 源码部署tomcat运行报错ClassNotFoundException: org.jasig.cas.CasEnvironmentCo
情况 cas单点登录 cas server 源码部署tomcat运行报错 把cas server的代码下载下来后使用gradle插件或者maven插件以及转化成eclipse·后导入发现部署到tomc ...
- JForum 2.19源码部署到eclipse
前两天在研究免费论坛,通过oschina和相关的文档查阅,最终选择了jforum,首先他是java写的,其次方便二次开发,而且有些论坛的源码都已经不在维护了,jforum最近几个月还是有更新的,但是从 ...
- centos7 源码部署LNMP
一.环境 系统环境:centos 7.4 64位 Nginx:1.7.9 MySQL: 5.7.20 (二进制包) PHP:5.6.37 二.Ngin 安装 Nginx部署 yum install ...
- zabbix3.4 源码部署
centos6.8 系统 zabbix3.4.9 msyql5.7.22 php5.6.24 在centos6上面源码部署zabbix.3.4 问题比较多,需要花不少时间去解决,建议 ...
随机推荐
- Java编程思想 学习笔记1
一.对象导论 1.抽象过程 Alan Kay曾经总结了第一个成功的面向对象语言.同时也是Java所基于的语言之一的Smalltalk的五个基本特性,这些特性表现了纯粹的面向对象程序设计方式 1)万物皆 ...
- HTML语义化
什么是HTML语义化呢? 根据内容的结构化(内容语义化),选择合适的标签(代码语义化),便于开发者阅读,写出优雅的代码的同时让浏览器的爬虫更好的解析 语义化标签的优势: 1)代码结构清晰,方便阅读 2 ...
- JAVA BufferedReader 类从标准输入读取数据
1,从标准输入上建立输入流: BufferedReader localReader = new BufferedReader( new InputStreamReader(System.in)); S ...
- 第二节--Servlet
1.在tomcat的webapp下新建一个web项目test 要有WEB-INF目录,其下有web.xml. 2.WEB-INF下文件是给tomcat使用的 3.用户访问localhost:848 ...
- Guava Immutable 不可变集合
Immutable是为了创建不可变集合使用,不可变集合在很多情况下能提高系统性能.一般使用 .of()或者.builder()<>().put().build()初始化创建不可变集合
- C++ 中 #ifndef, #define, #endif 宏定义
目的:为了保证包含的内容只被程序(include) 和编译了一次.判断预处理器常量是否已被定义. 预编译将所有头文件(#include"XXX.h")用头文件中的内容来替换,头文件 ...
- MacOs -bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or directory
1解决iterm远程登录主机报错 -bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or ...
- Sqoop异常:Exception in thread "main" java.lang.NoClassDefFoundError: org/json/JSONObject
18/12/07 01:09:03 INFO mapreduce.ImportJobBase: Beginning import of staffException in thread "m ...
- python 线程 event
全局定义了一个“Flag”,如果“Flag”值为 False,那么当程序执行 event.wait 方法时就会阻塞,如果“Flag”值为True,那么执行event.wait 方法时便不再阻塞. cl ...
- python - class类 (五) 继承补充-子类继承父类属性/函数方法
子类继承父类属性/函数方法: #方式一:(原生方式,不建议使用) class Dongwu(object): def __init__(self,name,sex,old): self.name = ...