java - 无法启动基于 Mavericks 构建的应用程序

标签 java xcode macos osx-lion osx-mavericks

我的 Java 应用程序有一个构建在另一台服务器计算机上的应用程序。该服务器机器现已升级为 Mavericks + xcode 5.1。早些时候,我遇到了未使用 Mavericks + xcode 5.1 更新在服务器计算机上签署我的应用程序的问题,我按照帖子 - Failed to sign Mac OS X app 中提到的进行了更改。

签名应用程序的更改是 -

#!/bin/sh
if [ -f "/Applications/Xcode.app/Contents/Developer/usr/bin/codesign_allocate" ]; then
export CODESIGN_ALLOCATE="/Applications/Xcode.app/Contents/Developer/usr/bin/codesign_allocate"
elif [ -f "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate" ]; then
export CODESIGN_ALLOCATE="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate"
else
export CODESIGN_ALLOCATE="/usr/bin/codesign_allocate"
fi
codesign --deep -s "my name" MayApp.app
codesign -v MayApp.app && echo MayApp.app is Signed Successfully!

上述更改使我的应用程序成功签名,但现在应用程序未启动,尝试使用此命令会引发以下错误 -

admins-iMac-4:~ admin$ open /Users/admin/Desktop/APP/MyApp.app 
LSOpenURLsWithRole() failed with error -10810 for the file /Users/admin/Desktop/APP/MyApp.app.

环境是-

在服务器计算机

  1. Mac 版本: Mavericks
  2. XCode 版本:5.0
  3. Java 版本:Library/Java/JavaVirtualMachines/jdk1.7.0_21.jdk/

我的测试机

  1. Mac 版本:Mountain Lion 10.8.2
  2. Xcode 版本:版本 4.6 (4H127)
  3. Java 版本:Library/Java/JavaVirtualMachines/jdk1.7.0_21.jdk/

在我的机器上一切正常,即能够构建、运行应用程序和签署应用程序。但是使用相同的代码,构建的应用程序可以签名,但无法在我的机器以及 Mavericks 机器上启动。

经过观察,我发现 - http://www.java.com/en/download/faq/java_mac.xml

Oracle 的 Java 版本 7u25 及更低版本已被 Apple 在 OS X 上禁用。更新到最新版本将允许 Java 在 Mac OS X 上运行。

如果我将旧版 JDK 从另一个工作应用程序从/Applications/MyAnotherApp.app/Contents/PlugIns/jdk1.7.0_21.jdk 复制到 MyApp 以使我的应用程序启动。

只更新Java版本就可以解决JDK的权限问题吗?

如何解决该问题,因为 MyApp 将始终构建在使用 Mavericks + Xcode 5.1 更新的服务器计算机上

谢谢

最佳答案

kLSUnknownErr (-10810)

An unknown error has occurred. 

基本上,这意味着启动服务框架行为不当并且在尝试启动应用程序时遇到错误。当您遇到此错误消息时,最好重新启动机器

看看this发布。

关于java - 无法启动基于 Mavericks 构建的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20043127/

相关文章:

objective-c - 在运行时更改 Cocoa 应用程序图标、标题和菜单标签

objective-c - 自定义基于 View 的 nstableview 调整大小

java - 如何在Hybris中安装ywebfragmentcache?

Java JTable 不可见

java - 将标记中的数据添加到Firebase

xcode - 快速重载初始化()

iphone - 是否可以取消所有正在处理的 NSURLConnection?

macos - 使用 Homebrew 安装的自动启动 PostgreSQL 的正确方法是什么?

java - 选择 ImageView 中的内容 - Android

ios - CocoaPods 缺少框架导致 "linker command failed"错误