Installing Pentaho with M1 macOS

No, it’s not out-of-the-box as they say.

Herman Menor, Jr.
3 min readMay 20, 2023
Photo by Pakata Goh on Unsplash


Pentaho is famous for it’s ETL capability. But for more info read it here:

The Problem I Had with M1 Chip macOS

After trying to install the “out-of-the-box” app and getting the Java8… I ended up with this error:

herman@hmenorjr ~/Downloads/data-integration $ ./ java.lang.UnsatisfiedLinkError: Could not load SWT library. Reasons: no swt-cocoa-4940r23 in java.library.path: [./../libswt/osx64/] no swt-cocoa in java.library.path: [./../libswt/osx64/] Can't load library: /Users/herman/.swt/lib/macosx/aarch64/libswt-cocoa-4940r23.jnilib Can't load library: /Users/herman/.swt/lib/macosx/aarch64/libswt-cocoa.jnilib Can't load library: /Users/herman/.swt/lib/macosx/aarch64/libswt-cocoa-4940r23.jnilib at org.eclipse.swt.internal.Library.loadLibrary( at org.eclipse.swt.internal.Library.loadLibrary( at org.eclipse.swt.internal.C.<clinit>( at org.eclipse.swt.widgets.Display.<clinit>( at org.pentaho.di.ui.core.widget.OsHelper.setAppName( at org.pentaho.di.ui.spoon.Spoon.main( at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke( at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke( at java.base/java.lang.reflect.Method.invoke( at org.pentaho.commons.launcher.Launcher.main( herman@hmenorjr ~/Downloads/data-integration $ java --version openjdk 11.0.19 2023-04-18 OpenJDK Runtime Environment Homebrew (build 11.0.19+0) OpenJDK 64-Bit Server VM Homebrew (build 11.0.19+0, mixed mode)

What I did to Install

Pentaho App

Download and config the app.

  1. Download the tool:
  2. Unzip it (of course) in /Applications/ and you should see a folder data-integration/
  3. Execute this command: /data-integration/libswt/osx64/and delete swt.jar
  4. Download this file and put it where the swt.jar were deleted: 2.06 MB file on MEGA (Do not rename it)


Now the app is set, time for the JDK.

  1. Download and install Java 8 compatible with M1 HERE
  2. Configure your terminal, I’m currently ~/.zshrc so I’m updating that by opening the file in terminal and adding this in it:
export JAVA_HOME=/Library/Java/JavaVirtualMachines/temurin-8.jdk/Contents/Home


Config macOS’ console/terminal/command prompt or whatever you call it.

  1. Open the terminal’s setting.
  2. Copy any profiles you want. Mine, I copied Homebrew and renamed it “Intel Terminal”
  1. Go to “Shell” tab and put this in the “Run Command” field:
env /usr/bin/arch -x86_64 /bin/zsh --login

2. Uncheck “Run inside shell”

  1. Restart the terminal.
  2. To start Pentaho, execute this command in the terminal:
cd /Applications/data-integration/

3.Then execute: ./

That should do it!

Get Involved

I’m not a fan of a pawall. However, if this helped you, consider donating for coffee… or pizza.



Herman Menor, Jr.

A traveler, foodie, gamer and basketball player temporarily working as a Software Engineer and Freelance Web Developer.