数据仓需用到ETL(Extract-Transform-Load)工具,朋友推荐使用kettle。
kettle为java编写,可跨平台。编译kettle源码后(耗时4小时),发现无法运行。
网络爬文,搜索讯息,发现ARM平台编译安装kettle资料较少,CDSN有篇文章提到较为全面,但文章只能看部分,查看全部需缴费成为VIP,技术文章本意就是分享,吃相难看。
在国外技术论坛翱翔数天后,问题已解决,将问题记录如下:
1、kettle基于jdk1.8开发,需提前安装openjdk-8-jdk,多版本需切换为1.8
update-alternatives --config java
有 2 个候选项可用于替换 java (提供 /usr/bin/java)。
选择 路径 优先级 状态
------------------------------------------------------------
0 /usr/lib/jvm/java-11-openjdk-arm64/bin/java 1111 自动模式
1 /usr/lib/jvm/java-11-openjdk-arm64/bin/java 1111 手动模式
* 2 /usr/lib/jvm/java-8-openjdk-arm64/jre/bin/java 1081 手动模式2、编译后启动脚本默认未添加ARM平台,需要手动添加。
在spoon.sh 180行
ppc64)
LIBPATH=$CURRENTDIR/../libswt/linux/ppc64/
;;下加入
aarch64)
LIBPATH=$CURRENTDIR/../libswt/linux/aarch64/
;;3、参照启动脚本,在{$CURRENTDIR}/libswt/linux目录新建aarch64文件夹,将ARM64架构swt.jar(The Standard Widget Toolkit)包导入。
4、依次安装依赖包:
libicu57_57.1-6deb9u4_arm64.deb >>> libjavascriptcoregtk-1.0-0_2.4.11-3_arm64.deb >>> libwebkitgtk-1.0-0_2.4.11-3_arm64.deb
5、启动脚本,验证。
UOS_V20_SP1、kylin_V10_SP1,Kylin990、FT2000+、Kupeng 920平台测试正常。
© 2025 | ♥