Search code examples
javamacoslibgdxapp-storemac-app-store

Cannot edit embedded info.plist within JRE that's causing CFBundleIdentifier Collision


I'm trying to upload an app to the mac app store and keep getting

CFBundleIdentifier Collision - The Info.plist CFBundleIdentifier value 'net.java.openjdk.cmd' of 'java' is already in use by another application.
CFBundleIdentifier Collision - The Info.plist CFBundleIdentifier value 'net.java.openjdk.cmd' of 'pack200' is already in use by another application.

I'm embedding a JRE within my app and these two files require unique bundle identifiers.

How do I change the Info.plist within java/pack200 if it's embedded within the executable? Changing it with a text editor just corrupts the file.


Solution

  • I figured it out.

    What I was doing wrong was editing java/pack200 with a text editor. I ended up using a hex editor and edited the bundle identifier value of "net.java.openjdk.cmd" to a unique bundle identifier before packing it.

    The new bundle identifier must be the same length of characters as the old one or else it won't be available to codesign.