kettle源码分析

kettle源码分析

ID:37567779

大小:5.66 MB

页数:33页

时间:2019-05-25

kettle源码分析_第1页
kettle源码分析_第2页
kettle源码分析_第3页
kettle源码分析_第4页
kettle源码分析_第5页
资源描述:

《kettle源码分析》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Kettle源码分析一.获取并编译源码1.1.获取源码Svn获取svn://source.pentaho.org/svnkettleroot/Kettle/tags网页获取官方网站:http://kettle.pentaho.com/1.1.编译源码将项目加载到eclipse将kettle项目拷贝到eclipse的workspace目录下,在eclipse中新建javaproject,项目名称和你拷贝过来的kettle文件夹名称一致项目导入到eclipse中会出现一个错误,如下图,将这个文件的源码全部注释掉编译打开build

2、.xml,在右边的。Outline点击kettle->runas->antbuild第一次编译的时候需要从网上下载几个文件,放在C:DocumentsandSettingsAdministrator.subfloor,网络不好的话下载会比较慢,也可以直接文件放在C:DocumentsandSettingsAdministrator下。编译完成后将bin目录下的.bat文件拷贝到Kettle目录下点击Spoon.bat运行,运行成功代表编译已近通过用源码运行SpoonKettle源码工程本身可能是在linux64位

3、机器上调试的,swt配置是linux64的库,所以在运行源码前需要修改成win32的swt,步骤如下:工程à属性àJavaBuildPathàlibrariesàaddjars然后将linux64的SWT库删除最后打开src-uiàorg.pentaho.di.ui.spoonàSpoon.java,RunAsàjavaapplication一.源码分析2.1.修改kettle界面修改初始化界面打开packageorg.pentaho.di.ui.spoon的Spoon.Java,找到main函数,该main函数为Spoon

4、工具的入口,找到如下语句Splashsplash=newSplash(display);该语句为spoon初始化显示的界面,跳到定义Splash.java,下面函数canvas.addPaintListener(newPaintListener(){publicvoidpaintControl(PaintEvente){StringversionText=BaseMessages.getString(PKG,"SplashDialog.Version")+""+Const.VERSION;//$NON-NLS-1$//$NO

5、N-NLS-2$StringBuildersb=newStringBuilder();Stringline=null;try{BufferedReaderreader=newBufferedReader(newInputStreamReader(Splash.class.getClassLoader().getResourceAsStream("org/pentaho/di/ui/core/dialog/license/license.txt")));//$NON-NLS-1$while((line=reader.readL

6、ine())!=null){sb.append(line+System.getProperty("line.separator"));//$NON-NLS-1$}}catch(Exceptionex){sb.append("");//$NON-NLS-1$Log.warn(BaseMessages.getString(PKG,"SplashDialog.LicenseTextNotFound"));//$NON-NLS-1$}StringlicenseText=sb.toString();e.gc.drawImage(ket

7、tle_image,0,0);//IfthisisaMilestoneorRCrelease,warntheuserif(Const.RELEASE.equals(Const.ReleaseType.MILESTONE)){versionText=BaseMessages.getString(PKG,"SplashDialog.DeveloperRelease")+"-"+versionText;//$NON-NLS-1$//$NON-NLS-2$drawVersionWarning(e);}elseif(Const.REL

8、EASE.equals(Const.ReleaseType.RELEASE_CANDIDATE)){versionText=BaseMessages.getString(PKG,"SplashDialog.ReleaseCandidate")+"-"+versionText;//$NON-

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。