使用OSX 10.9构建的Java 7应用程序在OSX 10.7.5上崩溃

时间:2013-10-31 12:24:44

标签: java macos java-7 osx-mavericks

我在OSX10.9上为我的应用程序构建了一个Java 7软件包,一切都很好但是当我在OSX 10.7上尝试它在启动时崩溃,它已经尝试了10.7.3和10.7.5。我确信Java 7的早期访问版本确实有效,但每次都会失败。

但是OSX 10.7.3及更高版本支持Java 7,对吧?

以下详细信息:

Process:         launchd [229]
Path:            /Applications/Jaikoz.app/Contents/MacOS/Jaikoz
Identifier:      com.jthink.jaikoz
Version:         ??? (???)
Code Type:       X86-64 (Native)
Parent Process:  launchd [110]

Date/Time:       2013-10-30 21:10:32.986 +0000
OS Version:      Mac OS X 10.7.5 (11G56)
Report Version:  9

Interval Since Last Report:          9929716 sec
Crashes Since Last Report:           15
Per-App Crashes Since Last Report:   1
Anonymous UUID: 9162B9F6-4E51-4991-9437-5E6CB7C3A73D

Crashed Thread:  Unknown

Exception Type:  EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_PROTECTION_FAILURE at 0x00007fff5fc01028

Backtrace not available

Unknown thread crashed with X86 Thread State (64-bit):
  rax: 0x0000000000000055  rbx: 0x0000000000000000  rcx: 0x0000000000000000  rdx: 0x0000000000000000
  rdi: 0x0000000000000000  rsi: 0x0000000000000000  rbp: 0x0000000000000000  rsp: 0x0000000000000000
   r8: 0x0000000000000000   r9: 0x0000000000000000  r10: 0x0000000000000000  r11: 0x0000000000000000
  r12: 0x0000000000000000  r13: 0x0000000000000000  r14: 0x0000000000000000  r15: 0x0000000000000000
  rip: 0x00007fff5fc01028  rfl: 0x0000000000010203  cr2: 0x00007fff5fc01028
Logical CPU: 0

Binary images description not available


External Modification Summary:
  Calls made by other processes targeting this process:
    task_for_pid: 2
    thread_create: 0
    thread_set_state: 0
  Calls made by this process:
    task_for_pid: 0
    thread_create: 0
    thread_set_state: 0
  Calls made by all processes on this machine:
    task_for_pid: 312
    thread_create: 0
    thread_set_state: 0

Model: Macmini2,1, BootROM MM21.009A.B00, 2 processors, Intel Core 2 Duo, 1.83 GHz, 2 GB, SMC 1.19f2
Graphics: Intel GMA 950, GMA 950, Built-In, spdisplays_integrated_vram
Memory Module: BANK 0/DIMM0, 1 GB, DDR2 SDRAM, 667 MHz, 0xAD00000000000000, 0x48594D503531325336344350382D59352020
Memory Module: BANK 1/DIMM1, 1 GB, DDR2 SDRAM, 667 MHz, 0xAD00000000000000, 0x48594D503531325336344350382D59352020
AirPort: spairport_wireless_card_type_airport_extreme (0x168C, 0x86), Atheros 5424: 2.1.14.9
Bluetooth: Version 4.0.8f17, 2 service, 18 devices, 1 incoming serial ports
Network Service: Ethernet, Ethernet, en0
Serial ATA Device: Hitachi HTS541680J9SA00, 80.03 GB
Parallel ATA Device: MATSHITACD-RW  CW-8124
USB Device: Keyboard Hub, apple_vendor_id, 0x1006, 0xfd500000 / 2
USB Device: Apple Keyboard, apple_vendor_id, 0x0221, 0xfd520000 / 3
USB Device: Bluetooth USB Host Controller, apple_vendor_id, 0x8205, 0x7d100000 / 2
USB Device: IR Receiver, apple_vendor_id, 0x8240, 0x7d200000 / 3
USB Device: Microsoft Wireless Optical Mouse® 1.00, 0x045e (Microsoft Corporation), 0x00e1, 0x5d200000 / 2

1 个答案:

答案 0 :(得分:1)

我发现问题是我使用修改后的Appbundler项目https://bitbucket.org/infinitekind/appbundler/而我忘了当我试图在Mavericks上构建它时失败了,因为它无法找到10.7 sdk。

所以我改变了

<arg value="/Applications/Xcode.app/Contents/Developer/Platforms
      /MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk"/>
<arg value="-mmacosx-version-min=10.7"/> 

<arg value="/Applications/Xcode.app/Contents/Developer/Platforms
     /MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk"/>
<arg value="-mmacosx-version-min=10.8"/> 

但我本来应该改变第一行,然后单独留下第二行

<arg value="/Applications/Xcode.app/Contents/Developer/Platforms
     /MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk"/>
<arg value="-mmacosx-version-min=10.7"/> 

使用此版本的Appbundler构建我的应用程序现在可以在10.7,10.8和10.9上正常运行。此更改已独立提交到InfiniteKind项目。