Running Hitachi Vantara Pentaho PDI 9.2 and Apache HOP 1.0.0 under Mac OS 12.1 with M1
Initial steps for Pentaho PDI only
- Download install package (pdi-ce-9.2.0.0-290.zip) from here and unpack to chosen location.
Hint
Select different mirror to download faster. If you’re in UK/Europe, choose France for fastest download speed.
- Delete the swt.jar in {unpack_directory_pdi-ce-9.2.0.0-290.zip}/data-integration/libswt/osx64/ and move the file org.eclipse.swt.cocoa.macosx.x86_64-3.116.100.jar there.
Initial steps for Apache HOP only
- Download install package (apache-hop-client-1.1.0.zip) from here and unpack to chosen location.
Steps for both Pentaho PDI and Apache HOP
- Download and unpack zip containing Java 8 for M1 and SWT library from here.
- Install Java 8 for M1 by running: OpenJDK8U-jdk_x64_mac_hotspot_8u312b07.pkg
- Open zshrc.txt and copy the first line with the export.
Caution
The below step assumes you’re using default shell that comes out of the box. If you’re using any customisation, such as “oh my zsh” check in the appropriate documentation for the name of the file that contains your profile default settings.
- Open Terminal and run:
vi ~/.zshrc
Now on your keyboard:
PRESS i
Navigate to the free line in the file.
PRESS cmd+v
PRESS esc
PRESS :wq
source ~/.zshrc
- Open Terminal setting and add new profile with a name: Rosetta Intel, go to Shell tab and paste the below in Run command (tick the checkbox there but untick the “Run inside shell”):
env /usr/bin/arch -x86_64 /bin/zsh --login
Hint
Set this new profile as default.
- Now click on the menu bar: Shell > New Window > Rosetta Intel to start the new Terminal session.
Starting PDI
- In the new window cd to your directory where PDI is unpacked and run:
./spoon.sh
- PDI should now start after few minutes of loading.
Starting HOP
./hop-gui.sh
- HOP should now start after few minutes of loading.
Notes
- If you’ve got any errors regarding the SWT in the Terminal when trying to run Spoon, try downloading the most recent SWT from here: https://mvnrepository.com/artifact/org.eclipse.platform/org.eclipse.swt.cocoa.macosx.x86_64 (You don’t need to change the name of the jar but ensure that the original swt.jar is deleted).
- Java 8 for M1 has been obtained from: https://adoptium.net/releases.html?variant=openjdk8.
- Don’t use dark mode as it is not yet supported.
Packages to download
- PDI download link:
https://sourceforge.net/projects/pentaho/files/Pentaho-9.2/client-tools/pdi-ce-9.2.0.0-290.zip/download - HOP download link:
https://hop.apache.org/download/ - SWT and Java kit (without PDI/HOP – download links above) on Google Drive (100MB): https://bit.ly/3LmCEAz
is it run properly?
It is running fine for me. I’ve been using it for few months now. I’m using it for all sorts of ETL, including API interaction. One important thing to note is to not use Dark Mode on a Mac as PDI is not compatible with that. I haven’t checked HOP for this yet.
force close when try to open ktr/job from repository(Pentaho User console). any solution?
while open ktr/job from local, smoothly
I’ve spun up brand new instance of Pentaho BA server and connected to it’s repository from my PDI. Both on the same M1 machine. I’ve tested both save and open transformation using the repository so it looks like something is not configured correctly on your end. Few checks on that:
1. What platform you’re on? Including OS version and Pentaho, for example: M1 Pro on Monterey 12.1, PDI 9.2, PUC 9.2
2. Which java do you have installed? Run
echo $JAVA_HOME
in your terminal and let me know the output here, mine is:/Library/Java/JavaVirtualMachines/temurin-8.jdk/Contents/Home
3. Do you have any value returned in your Terminal when running:
echo $PENTAHO_JAVA_HOME
?3. Can you take a look into logs for any errors and post them here (without personal information)? Logs location by default:
/data-integration/logs/
It works!! I almost give up installing PDI on my mac os 12. Thank you so much for sharing
Awesome, I’m glad it works for you!
It worked for me too! But is there any way to set shortcut to open it rather than running ./spoon.sh each time I want to open it?
You could potentially use the Automator.app > Application > Run Shell Script, although I haven’t tested that yet.
Hey Mike, thanks for the knowledge sharing. I’m very appreciate it, consice explanation. I came to the problem, when I run ./spoon.sh , the error appeared saying
-Djava.endorsed.dirs=/Users/yosral/Downloads/data-integration/system/karaf/lib/endorsed is not supported. Endorsed standards and standalone APIs
in modular form will be supported via the concept of upgradeable modules.
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
Could you help me with this problem? Again, thanks for your help.
I found this on Stackoverflow:
https://stackoverflow.com/questions/61207442/pentaho-data-integration-installation-problem-in-macos-10-15-4
This might be actually your post looking at the username 😉
i’m getting this error
no swt-cocoa-4623
where do i need to replace the swt file? is it in the
/Users/yohanes/.swt/lib/macosx/aarch64/libswt-cocoa-4623.jnilib: dlopen(/Users/yohanes/.swt/lib/macosx/aarch64/libswt-cocoa-4623.jnilib, 0x0001): tried: ‘/Users/yohanes/.swt/lib/macosx/aarch64/libswt-cocoa-4623.jnilib’ (mach-o file, but is an incompatible architecture (have ‘x86_64’, need ‘arm64e’))
i’m getting the no-swt-cocoa error
after downloading the jar, where should i put it?
is it in /Users/yohanes/.swt/lib/macosx/aarch64/libswt-cocoa-4623.jnilib: dlopen(/Users/yohanes/.swt/lib/macosx/aarch64/libswt-cocoa-4623.jnilib, 0x0001): tried: ‘/Users/yohanes/.swt/lib/macosx/aarch64/libswt-cocoa-4623.jnilib’ (mach-o file, but is an incompatible architecture (have ‘x86_64’, need ‘arm64e’))
hi, i’m getting the swt error.
i have downloaded the file that you tell, but i don’t know where to put it.
Hi Yohanes,
You have to delete exisiting swt.jar in your pdi directory:
“your-pdi-directory-path”/data-integration/libswt/osx64/ and move the file org.eclipse.swt.cocoa.macosx.x86_64-3.116.100.jar there
Is that the file you’re referring to?