Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
基于Java的mac应用程序在旧MacOSX中无法运行_Java_Macos_Osx Snow Leopard - Fatal编程技术网

基于Java的mac应用程序在旧MacOSX中无法运行

基于Java的mac应用程序在旧MacOSX中无法运行,java,macos,osx-snow-leopard,Java,Macos,Osx Snow Leopard,我开发了一个基于Java的应用程序,并创建了一个桌面mac应用程序。正如您所知,当您为Mac创建捆绑包时,您必须在捆绑包中嵌入完整的JDK(在我的例子中是1.8),因此无论目标是否安装了Java,您的应用程序都会附带它 在MacOSX 10.10和10.9中,一切都运行良好。。。(我没有在10.7或10.8中进行测试) 但是当我在10.6.8 MacOSX中运行时,Java崩溃了。。。在控制台中,我看到以下内容: Process: JavaAppLauncher [354] Pa

我开发了一个基于Java的应用程序,并创建了一个桌面mac应用程序。正如您所知,当您为Mac创建捆绑包时,您必须在捆绑包中嵌入完整的JDK(在我的例子中是1.8),因此无论目标是否安装了Java,您的应用程序都会附带它

在MacOSX 10.10和10.9中,一切都运行良好。。。(我没有在10.7或10.8中进行测试)

但是当我在10.6.8 MacOSX中运行时,Java崩溃了。。。在控制台中,我看到以下内容:

Process:         JavaAppLauncher [354]
Path:            /Applications/myapp.app/Contents/MacOS/JavaAppLauncher
Identifier:      com.myapp.desktop
Version:         1.0.8 (1)
Code Type:       X86-64 (Native)
Parent Process:  launchd [130]

Date/Time:       2015-02-27 16:58:14.384 +0100
OS Version:      Mac OS X 10.6.8 (10K549)
Report Version:  6

Exception Type:  EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000002, 0x0000000000000000
Crashed Thread:  3

Thread 0:  Dispatch queue: com.apple.main-thread
0   libSystem.B.dylib               0x00007fff8a4acd7a mach_msg_trap + 10
1   libSystem.B.dylib               0x00007fff8a4ad3ed mach_msg + 59
2   com.apple.CoreFoundation        0x00007fff848a2902 __CFRunLoopRun + 1698
3   com.apple.CoreFoundation        0x00007fff848a1d8f CFRunLoopRunSpecific + 575
4   libjli.dylib                    0x0000000100038b34 CreateExecutionEnvironment + 871
5   libjli.dylib                    0x0000000100034ac4 JLI_Launch + 1952
6   com.myapp.desktop          0x00000001d7448990 launch + 5696
7   com.myapp.desktop          0x00000001d7447136 main + 102
8   com.myapp.desktop          0x00000001d74470c4 start + 52

Thread 1:  Dispatch queue: com.apple.libdispatch-manager
0   libSystem.B.dylib               0x00007fff8a4c5c0a kevent + 10
1   libSystem.B.dylib               0x00007fff8a4c7add _dispatch_mgr_invoke + 154
2   libSystem.B.dylib               0x00007fff8a4c77b4 _dispatch_queue_invoke + 185
3   libSystem.B.dylib               0x00007fff8a4c72de _dispatch_worker_thread2 + 252
4   libSystem.B.dylib               0x00007fff8a4c6c08 _pthread_wqthread + 353
5   libSystem.B.dylib               0x00007fff8a4c6aa5 start_wqthread + 13

Thread 2:
0   libSystem.B.dylib               0x00007fff8a4e7a6a __semwait_signal + 10
1   libSystem.B.dylib               0x00007fff8a50e896 pthread_join + 844
2   libjli.dylib                    0x0000000100038134 ContinueInNewThread0 + 102
3   libjli.dylib                    0x0000000100035738 ContinueInNewThread + 201
4   libjli.dylib                    0x0000000100037f09 JVMInit + 315
5   libjli.dylib                    0x00000001000354b6 JLI_Launch + 4498
6   com.myapp.desktop          0x00000001d7448990 launch + 5696
7   com.myapp.desktop          0x00000001d7447136 main + 102
8   libjli.dylib                    0x00000001000387c6 apple_main + 92
9   libSystem.B.dylib               0x00007fff8a4e5fd6 _pthread_start + 331
10  libSystem.B.dylib               0x00007fff8a4e5e89 thread_start + 13

Thread 3 Crashed:
0   com.apple.CoreFoundation        0x00007fff848d98a1 ___forwarding___ + 673
1   com.apple.CoreFoundation        0x00007fff848d5a38 _CF_forwarding_prep_0 + 232
2   libobjc.A.dylib                 0x00007fff89347325 _class_initialize + 384
3   libobjc.A.dylib                 0x00007fff8935552b prepareForMethodLookup + 234
4   libobjc.A.dylib                 0x00007fff8934dcb9 lookUpMethod + 73
5   libobjc.A.dylib                 0x00007fff89345faa objc_msgSend + 198
6   libawt_lwawt.dylib              0x0000000116528ca4 JNI_OnLoad + 412
7   libjava.dylib                   0x00000001004c7c49 Java_java_lang_ClassLoader_00024NativeLibrary_load + 208
8   ???                             0x00000001027474d4 0 + 4336153812
9   ???                             0x000000010273b98d 0 + 4336105869
10  ???                             0x000000010273b160 0 + 4336103776
11  ???                             0x000000010273b98d 0 + 4336105869
12  ???                             0x000000010273b98d 0 + 4336105869
13  ???                             0x00000001027344e7 0 + 4336076007
14  libjvm.dylib                    0x0000000101ad4442 JavaCalls::call_helper(JavaValue*, methodHandle*, JavaCallArguments*, Thread*) + 1710
15  libjvm.dylib                    0x0000000101b094bb jni_invoke_static(JNIEnv_*, JavaValue*, _jobject*, JNICallType, _jmethodID*, JNI_ArgumentPusher*, Thread*) + 447
16  libjvm.dylib                    0x0000000101b027ed jni_CallStaticVoidMethodV + 232
17  libjava.dylib                   0x00000001004d49cb JNU_CallStaticMethodByName + 282
18  libawt.dylib                    0x00000001163bb337 AWT_OnLoad + 547
19  libawt.dylib                    0x00000001163bb384 JNI_OnLoad + 9
20  libjava.dylib                   0x00000001004c7c49 Java_java_lang_ClassLoader_00024NativeLibrary_load + 208
21  ???                             0x00000001027474d4 0 + 4336153812
22  ???                             0x000000010273b98d 0 + 4336105869
23  ???                             0x000000010273b160 0 + 4336103776
24  ???                             0x000000010273b98d 0 + 4336105869
25  ???                             0x000000010273b98d 0 + 4336105869
26  ???                             0x000000010273b98d 0 + 4336105869
27  ???                             0x000000010273b710 0 + 4336105232
28  ???                             0x00000001027344e7 0 + 4336076007
29  libjvm.dylib                    0x0000000101ad4442 JavaCalls::call_helper(JavaValue*, methodHandle*, JavaCallArguments*, Thread*) + 1710
30  libjvm.dylib                    0x0000000101b2ade2 JVM_DoPrivileged + 1208
31  ???                             0x00000001027474d4 0 + 4336153812
32  ???                             0x000000010273b710 0 + 4336105232
33  ???                             0x000000010273b98d 0 + 4336105869
34  ???                             0x00000001027344e7 0 + 4336076007
35  libjvm.dylib                    0x0000000101ad4442 JavaCalls::call_helper(JavaValue*, methodHandle*, JavaCallArguments*, Thread*) + 1710
36  libjvm.dylib                    0x0000000101aa92b5 InstanceKlass::call_class_initializer_impl(instanceKlassHandle, Thread*) + 191
37  libjvm.dylib                    0x0000000101aaa797 InstanceKlass::initialize_impl(instanceKlassHandle, Thread*) + 1479
38  libjvm.dylib                    0x0000000101aaaa19 InstanceKlass::initialize(Thread*) + 61
39  libjvm.dylib                    0x0000000101ba674a LinkResolver::resolve_static_call(CallInfo&, KlassHandle&, Symbol*, Symbol*, KlassHandle, bool, bool, Thread*) + 156
40  libjvm.dylib                    0x0000000101ba695e LinkResolver::resolve_invokestatic(CallInfo&, constantPoolHandle, int, Thread*) + 258
41  libjvm.dylib                    0x0000000101ba6a1f LinkResolver::resolve_invoke(CallInfo&, Handle, constantPoolHandle, int, Bytecodes::Code, Thread*) + 179
42  libjvm.dylib                    0x0000000101ace819 InterpreterRuntime::resolve_invoke(JavaThread*, Bytecodes::Code) + 881
43  ???                             0x00000001027533ba 0 + 4336202682
44  ???                             0x000000010273b98d 0 + 4336105869
45  ???                             0x000000010273b710 0 + 4336105232
46  ???                             0x000000010273b7e4 0 + 4336105444
47  ???                             0x000000010273b710 0 + 4336105232
48  ???                             0x000000010273b98d 0 + 4336105869
49  ???                             0x00000001027344e7 0 + 4336076007
50  libjvm.dylib                    0x0000000101ad4442 JavaCalls::call_helper(JavaValue*, methodHandle*, JavaCallArguments*, Thread*) + 1710
51  libjvm.dylib                    0x0000000101b094bb jni_invoke_static(JNIEnv_*, JavaValue*, _jobject*, JNICallType, _jmethodID*, JNI_ArgumentPusher*, Thread*) + 447
52  libjvm.dylib                    0x0000000101b026b5 jni_CallStaticVoidMethod + 349
53  libjli.dylib                    0x00000001000360ea JavaMain + 2456
54  libSystem.B.dylib               0x00007fff8a4e5fd6 _pthread_start + 331
55  libSystem.B.dylib               0x00007fff8a4e5e89 thread_start + 13

有什么想法吗?

JRE/jdk8需要OSX10.8(MountainLion)或更高版本。

JRE/JDK 7需要OSX10.7(Lion)或更高版本。


我通常做的是创建第二个版本的应用程序,以JRE 6为目标,这是OS X 10.7之前的系统包括的(或在需要时自动下载)。我的目标不是JRE 8,而是JRE 7,因此您只需要有两个版本的应用程序就可以覆盖绝大多数OS X用户。

请非常清楚地阅读它的说明:任何基于Intel的运行OS X 10.8(Mountain Lion)或更高版本的计算机。。因此,我猜它在这个旧版本上不起作用,因为它依赖于OSX的运行时项目,而这些项目只出现在那个版本或更新版本上。在Windows中,使用InnoSetup,我可以动态下载Java,以防它不在系统中。。。这可以在MacOSX中以及任何软件中实现吗?我现在使用Ant从jar创建到.app,然后使用DMG画布从.app构建到.dmgOk,我的答案在这里;-)