首先到官网下载社区版Kettle,下载地址,最新的是9.4版本,一般下载社区版
解压即安装,mac用./spoon.sh启动。
sh ./spoon.sh
遇到的问题
问题一:
M1电脑macOS12.4安装Kettle执行spoon.sh报如下错误,原因是Kettle不支持M1。
用这个命令创建一个Rosetta Shell
env /usr/bin/arch -x86_64 /bin/zsh --login
这一步完成后,可以使用arch命令,查看当前的架构。原来是arm64。必须在i386的情况下打开kettle。
sh /Users/jason/Downloads/data-integration/spoon.sh
I'm sorry, this Mac platform [arm64] is not yet supported!
Please try starting using 'Data Integration 32-bit' or
'Data Integration 64-bit' as appropriate.
问题3:
(5)双击左侧Rosetta Shell图标打开终端,输入如下命令安装Homebrew,然后用homebrew来安装jdk8,注意kettle和jdk之间是强一致关系,我用的是kettle9.3和jdk8.
问题4:
用网上的命令还不行,brew install adoptopenjdk8,没办法我又自己下载了,打开 AdoptOpenJDK 的官方网站:https://adoptopenjdk.net/ ,完了之后下载还是不行,我又给jdk重新命名才可以。
admin@lbldeMacBook-Pro data-integration % cd /Library/Java/JavaVirtualMachines
admin@lbldeMacBook-Pro JavaVirtualMachines % ls
temurin-8.jdk temurin-8.jre
admin@lbldeMacBook-Pro JavaVirtualMachines % mv temurin-8.jdk jdk-1.8.jdk
mv: rename temurin-8.jdk to jdk-1.8.jdk: Permission denied
admin@lbldeMacBook-Pro JavaVirtualMachines % sudo mv temurin-8.jdk jdk-1.8.jdk
报错空指针,这个怎么解决?
2023-09-04 16:56:03.893:INFO:oejsh.ContextHandler:FelixDispatchQueue: Started HttpServiceContext{httpContext=DefaultHttpContext [bundle=file-open-save-new-core [276], contextID=default]}
org.pentaho.webpackage.core-impl [org.osgi.framework.FrameworkEvent] ERROR : FrameworkEvent ERROR
java.lang.NullPointerException
at org.pentaho.webpackage.core.impl.osgi.PentahoWebPackageBundleListener.lambda$registerWebPackageServices$0(PentahoWebPackageBundleListener.java:76)
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1384)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:482)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:472)
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:566)
at org.pentaho.webpackage.core.impl.osgi.PentahoWebPackageBundleListener.registerWebPackageServices(PentahoWebPackageBundleListener.java:77)
at org.pentaho.webpackage.core.impl.osgi.PentahoWebPackageBundleListener.bundleChanged(PentahoWebPackageBundleListener.java:57)
at org.apache.felix.framework.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:915)
at org.apache.felix.framework.EventDispatcher.fireEventImmediately(EventDispatcher.java:834)
at org.apache.felix.framework.EventDispatcher.run(EventDispatcher.java:1147)
at org.apache.felix.framework.EventDispatcher.access$000(EventDispatcher.java:54)
at org.apache.felix.framework.EventDispatcher$1.run(EventDispatcher.java:102)
at java.lang.Thread.run(Thread.java:750)
网络上说的kettle9.5版本解决了m1兼容问题,但是我下载了试了下,不行。会有转换格式的问题。类似这种的报错。网上说是要转换格式,我不会。
目前kettle是打开了的。
参考原地址:Kettle使用教程(一)—— 在MacOS系统中安装 Kettle_kettle mac_JM.K的博客-CSDN博客