How to setup Pentaho on MacOS Catalina

 

I’ve struggled several hours trying to figure out how to get the pentaho data integration app running on my macOS Catalina 10.15.2. When I ran spoon.sh or spoon.command in the terminal, the interface will eventually show up for a second but then will crash immediately.

pentaho-runtime-error

I was finally able to get it to run with Eris’s method. It’s seems that we need to tell Pentaho application specifically where java is located. So starting over, my final steps are:


1. Install Pentaho

○ → brew cask install data-integration
==\> Downloading https://downloads.sourceforge.net/pentaho/pdi-ce-8.3.0.0-371.zip
==\> Downloading from https://versaweb.dl.sourceforge.net/project/pentaho/Pentaho
###### \################################################################## 100.0%
==\> Verifying SHA-256 checksum for Cask 'data-integration'.
==\> Installing Cask data-integration
==\> Moving App 'Data Integration.app' to '/Applications/Data Integration.app'.
🍺  data-integration was successfully installed!

The .app file will be moved to the application folder when using brew cask install.

## To find out where the folder is located:
○ → brew cask info data-integration
data-integration: 8.3.0.0-371
https://community.hitachivantara.com/community/products-and-solutions/pentaho/
/usr/local/Caskroom/data-integration/8.3.0.0-371 (2,182 files, 1.2GB)  ##  \< -------- pentaho folder here
From: https://github.com/Homebrew/homebrew-cask/blob/master/Casks/data-integration.rb
==\> Name
Pentaho Data Integration
==\> Artifacts
data-integration/Data Integration.app (App)

2. Install Java

brew tap adoptopenjdk/openjdk
brew cask install adoptopenjdk8

3. Modify JavaApplicationStub

cd "/Applications/Data Integration.app/Contents/MacOS"
nano JavaApplicationStub

Replace the content with following:

# !/bin/sh
 
# PROG\_DIR=$(cd "$(dirname "$0")"; pwd)
 
# PROG\_DIR is in .app/Contents/MacOS
 
# BASE\_DIR="$PROG\_DIR"/../../../
BASE\_DIR="/usr/local/Caskroom/data-integration/8.3.0.0-371/data-integration"
cd "$BASE\_DIR"
echo $BASE\_DIR
. "spoon.command" "$BASE\_DIR"

4. Setup correct pentaho env in spoon.sh

cd /usr/local/Caskroom/data-integration/8.3.0.0-371/data-integration 
nano ./spoon.sh
# . "$BASEDIR/set-pentaho-env.sh"
# setPentahoEnv
# Comment out above 2 line and add below 2 line
\_PENTAHO\_JAVA\_HOME="/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/"
\_PENTAHO\_JAVA="/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/bin/java"

5. Run Data Integration app or spoon.sh

:rainbow: succuss No more strange errors! :v::v::v: succsess