5

Since there is currently no DrJava application bundle for macOS, I thought I could be the one to make it because I want to use it anyway. From just searching on the internet I made the following application bundle:

- DrJava.app
  - MacOS
    DrJava # this is a shell script that runs java -jar drjava.jar
    drjava.jar
  - Resources
    DrJavaIcon.png
    DrJavaSearchIcon.png
  Info.plist

And my Info.plist looks like:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">

<plist version="1.0"> <dict> <key>CFBundleName</key> <string>DrJava</string> <key>CFBundleExecutable</key> <string>DrJava</string> <key>CFBundleIcon</key> <string>DrJavaIcon.png</string> </dict> </plist>

The issue with this is that when I try to run the app, it tells me that I need to install Rosetta to do so.

However, this is simply not true. I can run ./DrJava and it will run perfectly fine without rosetta. My current guess is that there's a key in Info.plist that will indicate the architectures that are compatible with this bundle. But I haven't been able to find any such thing.

PS: Due to personal reasons, I don't want to make an Apple ID. As such I'm not trying to not install Xcode for as long as possible. I understand that this will make things more difficult, but I am committed.

jaume
  • 15,010

1 Answers1

1

If anyone else is having the same problem, I figured out a way to do this by letting Script Editor do it for me. My script is simply:

do shell script "java -jar drjava.jar"

I exported it this into an application automatically using script editor. It doesn't have an icon but that doesn't really matter.