Monday, January 3, 2022

MPCMaid and Java versions on Mac - OSX 10.14

 a requirement to run MPCMaid - http://mpcmaid.sourceforge.net/ - on a Mojave Mac.

Originally written for JRE 1.6 and packaged as a .jar file, it still fires up OK but is missing some important items, the prefs menu items to be specific where you can select the type of MPC you want to create programs for. In my case, an MPC500 that I'm using to test some MIDI processing scripts. 

The following process gets you the app in it's old-school fully-functional state:

1. get an old JRE, Java 6 from Apple: https://support.apple.com/kb/dl1572 and install

2. check your available Java versions:

/usr/libexec/java_home -V

you should see output like the following: 

Matching Java Virtual Machines (5):    

    15.0.1, x86_64: "Java SE 15.0.1" /Library/Java/JavaVirtualMachines/jdk-15.0.1.jdk/Contents/Home   
    1.8.0_312,       6" /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
    1.6.0_65-b14-468, i386: "Java SE 6" /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home


3. I chose a 'most compatible' version: ie. the final one and set it as the default:

export JAVA_HOME=`/usr/libexec/java_home -v 1.6.0_65-b14-468, i386`

4. Test running the  .jar now with:

cd /Applications

java -jar mpcmaid_beta.jar

 - all the old menus are restored and it can open/save/export normally

5. make the choice of default JRE permanent by adding the command in 3. above to your .bash_profile.

Note that the app/jar has to be opened from the terminal - double-clicking it will use the default, newer JRE (the system-provided jarlauncher)which is missing support for the old UI elements - you will always have to open it from the term or create an Automator/Applescript wrapper to make a double-clickable version.

The above approach my fail on a newer OSX but it's likely that fooling around with an OpenJVM Java version instead of the old Apple Java version might provide some of the back compaitibility required.


No comments: