Strange Symphonies The best way to predict the future is to invent it

20Sep/0911

FreeMind on Apple Mac OS X 10.6 Snow Leopard

Update: FreeMind has been updated to work out of the box on Apple Mac OS X 10.6 Snow Leopard

FreeMind

FreeMind is a mind mapping tool to help you structure your ideas. The best part about it is that its both Free and Open Source Software (FOSS), and cross platform as it runs on Java.

With a default upgrade to Apple Mac OS X 10.6 Snow Leopard, and loading FreeMind you are asked to install Rosetta.

To open JavaApplicationStub, you need to install Rosetta. Would you like to install it now?

Now, I don't want to install Rosetta as I wanted to eliminate all legacy PowerPC code on my machine, and let my machine run as best as it possibly could. Even upgrading to the latest unstable release of FreeMind (v0.9.0 Release Candidate 4 at this time of writing) doesn't help.

Doing a bit of googling, I found a result on how to remedy this issues. Unlucky for me, the site was in Japanese, but thanks to the help of Google, we were able to translate the article.

Explanation

Executing a file inside the FreeMind application on the JavaApplicationStub will show us the problem. Assuming that FreeMind is in the /Application directory, open the Terminal and execute:

file /Applications/FreeMind.app/Contents/MacOS/JavaApplicationStub

Results:

/Applications/FreeMind.app/Contents/MacOS/JavaApplicationStub: Mach-O executable

You'll see that the JavaApplicationStub is a Mach-O executable. FreeMind packaged their application without the x86 executables.

Lucky for us, we can find a substitute on the computer. Execute:

file /System/Library/Frameworks/JavaVM.framework/Versions/A/Resources/MacOS/JavaApplicationStub

Results:

/System/Library/Frameworks/JavaVM.framework/Versions/A/Resources/MacOS/JavaApplicationStub: Mach-O universal binary with 3 architectures
/System/Library/Frameworks/JavaVM.framework/Versions/A/Resources/MacOS/JavaApplicationStub (for architecture x86_64):	Mach-O 64-bit executable x86_64
/System/Library/Frameworks/JavaVM.framework/Versions/A/Resources/MacOS/JavaApplicationStub (for architecture i386):	Mach-O executable i386
/System/Library/Frameworks/JavaVM.framework/Versions/A/Resources/MacOS/JavaApplicationStub (for architecture ppc7400):	Mach-O executable ppc

You will notice that it has all the architectures.

Solution

Inside the terminal execute:

cp \
/System/Library/Frameworks/JavaVM.framework/Versions/A/Resources/MacOS/JavaApplicationStub \
/Applications/FreeMind.app/Contents/MacOS/JavaApplicationStub

Now open up FreeMind, and enjoy the Mind Mapping. It'll take a while to load, but it works just fine.
FreeMind

Update: FreeMind has been updated to out of the box on Apple Mac OS X 10.6 Snow Leopard

Related posts

Tags

Comments (11) Trackbacks (0)
  1. I was so disappointed to lose FreeMind when I upped to Snow Leopard. You’ve saved me a great deal of heatache. Thanks buddy!

  2. Works!!! Great!!!!! Thanks a lot.

  3. Thanks! You saved my day.

  4. Great! It worked! Tanks a lot…

  5. Thanks! I used it for the newest version of ArgoUML. Works like a charm.

  6. It works like a charm also for me! Thanks a lot…

  7. Simple. Neat. Effective. Great workaround !

  8. We are providing jre while bundling package. We want that user only double click on app & application launches, user does not copy explicitly JavaApplicationStub from his system to application folder to run it. So we want that our java product should be compatible to all java version, for doing so what changes I have to made?

    The current info.plist file is-

    CFBundleName
    My Application
    CFBundleIdentifier
    com.simontuffs.onejar.Boot
    CFBundleVersion
    2010.05.05.0
    CFBundleAllowMixedLocalizations
    true
    CFBundleExecutable
    JavaApplicationStub
    CFBundleDevelopmentRegion
    English
    CFBundlePackageType
    APPL
    CFBundleShortVersionString
    Version 2010.05.05.0
    CFBundleSignature
    ????
    CFBundleGetInfoString
    My Application, version 2010.05.05.0
    CFBundleInfoDictionaryVersion
    6.0
    CFBundleIconFile
    myapplicationicns.icns
    Java

    MainClass
    com.simontuffs.onejar.Boot
    JVMVersion
    1.4+
    WorkingDirectory
    $JAVAROOT/
    VMOptions
    -Xmx512m
    ClassPath
    $JAVAROOT/MyApplication.jar
    Properties

    com.apple.mrj.application.apple.menu.about.name
    My Application
    com.apple.mrj.application.live-resize
    true
    com.apple.macos.useScreenMenuBar
    true
    com.apple.hwaccel
    false
    com.apple.mrj.application.growbox.intrudes
    false
    javax.xml.parsers.DocumentBuilderFactory
    org.apache.xerces.jaxp.DocumentBuilderFactoryImpl
    javax.xml.parsers.SAXParserFactory
    org.apache.xerces.jaxp.SAXParserFactoryImpl

  9. I’m sorry, but I don’t do Java development on Apple Mac OS X. Can’t help you out.


Leave a comment


No trackbacks yet.