【问题标题】:Cannot edit embedded info.plist within JRE that's causing CFBundleIdentifier Collision无法在导致 CFBundleIdentifier 冲突的 JRE 中编辑嵌入的 info.plist
【发布时间】:2016-10-16 01:59:32
【问题描述】:

我正在尝试将应用上传到 mac 应用商店并继续获取

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.

我在我的应用程序中嵌入了一个 JRE,这两个文件需要唯一的包标识符。

如果 java/pack200 中的 Info.plist 嵌入在可执行文件中,我该如何更改它?使用文本编辑器更改它只会损坏文件。

【问题讨论】:

    标签: java macos libgdx app-store mac-app-store


    【解决方案1】:

    我想通了。

    我做错的是用文本编辑器编辑 java/pack200。我最终使用了一个十六进制编辑器,并在打包之前将“net.java.openjdk.cmd”的包标识符值编辑为一个唯一的包标识符。

    新捆绑包标识符的字符长度必须与旧捆绑包标识符相同,否则将无法用于协同设计。

    【讨论】:

    • @J W 你用的是哪个十六进制编辑器?我正在尝试使用 vim 编辑 java 和 keytool 可执行文件。但是,一旦我这样做,可执行文件就不再起作用了。例如,我尝试将 net.java.openjdk.cmd 更改为 net.java.openjdk.cm1 并得到 ❯ java --version [1] 35665 kill java --version 另外,您使用什么 java 版本来嵌入mac应用程序?感谢您的帮助。
    猜你喜欢
    • 2015-05-21
    • 1970-01-01
    • 2015-06-17
    • 1970-01-01
    • 1970-01-01
    • 2017-09-18
    • 1970-01-01
    • 2015-06-18
    • 1970-01-01
    相关资源
    最近更新 更多