2017-02-20 68 views
0

私は、IHMでswt/jfaceを使用しているRCP Javaプロジェクトに取り組んでいます。アプリのクラッシュを引き起こす重大な問題が発生しています。 私はpidファイルを検査しようとしましたが、pidファイルの最後のメソッドが異なります。 私はxmxとxmsを増やしましたが、クラッシュは残っています。Java 8でJAVA FATAL ERRORを解決する解決策はありますか?

pidファイルからスナップ

> # A fatal error has been detected by the Java Runtime Environment: 
> # 
> # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000000005f8c04fa, pid=5268, tid=0x00000000000008c0 
> # 
> # JRE version: Java(TM) SE Runtime Environment (8.0_102-b14) (build 1.8.0_102-b14) 
> # Java VM: Java HotSpot(TM) 64-Bit Server VM (25.102-b14 mixed mode windows-amd64 compressed oops) 
> # Problematic frame: 
> # C 0x000000005f8c04fa 
> # 
> # Failed to write core dump. Minidumps are not enabled by default on client versions of Windows 
> # 
> # If you would like to submit a bug report, please visit: 
> # http://bugreport.java.com/bugreport/crash.jsp 
> # The crash happened outside the Java Virtual Machine in native code. 
> # See problematic frame for where to report the bug. 
> # 
> 
> --------------- T H R E A D --------------- 
> 
> Current thread (0x000000000226f800): JavaThread "main" 
> [_thread_in_native, id=2240, 
> stack(0x00000000026a0000,0x00000000027a0000)] 
> 
> siginfo: ExceptionCode=0xc0000005, reading address 0x0000000000000013 
> 
> Registers: RAX=0x0000000000040b3e, RBX=0x0000000000000002, 
> RCX=0x0000000040b3ed30, RDX=0x0000000000000002 RSP=0x000000000279a700, 
> RBP=0x0000000040b3e000, RSI=0x0000000040b3e000, RDI=0x0000000000000000 
> R8 =0x0000000000000001, R9 =0x0000000000000001, 
> R10=0x0000000004deb3c9, R11=0x0000000004deb398 R12=0x00000000609a8730, 
> R13=0x0000000000000000, R14=0x0000000000000001, R15=0x0000000000000000 
> RIP=0x000000005f8c04fa, EFLAGS=0x0000000000010202 
> 
> Top of Stack: (sp=0x000000000279a700) 0x000000000279a700: 
> 000000000279a848 0000000000000000 0x000000000279a710: 
> 000000000226f800 000000000279a7d8 0x000000000279a720: 
> 000000000226f800 000000000279a808 0x000000000279a730: 
> 0000000000000000 0000000000470000 0x000000000279a740: 
> 000000000279a7d8 000000005f8bf2e3 0x000000000279a750: 
> 0000000000000002 0000000040b3ed30 0x000000000279a760: 
> 000000000279a7f0 0000000000470000 0x000000000279a770: 
> 0000000000000000 0000000004deb447 0x000000000279a780: 
> 0000000024385638 00000006dce5dbb0 0x000000000279a790: 
> 0000000000421054 0000000002c06f44 0x000000000279a7a0: 
> 0000000000000002 0000000004e7aef4 0x000000000279a7b0: 
> 0000000000000000 0000000000000000 0x000000000279a7c0: 
> 0000000036bb84e0 0000000000000000 0x000000000279a7d0: 
> 000000000279a868 00000006dd0f16a0 0x000000000279a7e0: 
> 00000006dd0f16a0 0000000002a77f10 0x000000000279a7f0: 
> 000000000279a868 0000000002a77f10 
> 
> Instructions: (pc=0x000000005f8c04fa) 0x000000005f8c04da: 81 e3 ff 
> 07 00 00 48 03 db 49 39 b4 dc d0 08 00 0x000000005f8c04ea: 00 75 28 
> 49 8b 9c dc d8 08 00 00 48 85 db 74 20 0x000000005f8c04fa: 0f b6 43 
> 11 41 3b c0 75 17 41 83 f8 01 0f 85 80 0x000000005f8c050a: 01 00 00 
> ff 43 18 e9 78 01 00 00 48 8b 5c 24 50 
> 
> 
> Register to memory mapping: 
> 
> RAX=0x0000000000040b3e is an unknown value RBX=0x0000000000000002 is 
> an unknown value RCX=0x0000000040b3ed30 is an unknown value 
> RDX=0x0000000000000002 is an unknown value RSP=0x000000000279a700 is 
> pointing into the stack for thread: 0x000000000226f800 
> RBP=0x0000000040b3e000 is an unknown value RSI=0x0000000040b3e000 is 
> an unknown value RDI=0x0000000000000000 is an unknown value R8 
> =0x0000000000000001 is an unknown value R9 =0x0000000000000001 is an unknown value R10=0x0000000004deb3c9 is at entry_point+73 in 
> (nmethod*)0x0000000004deb210 R11=0x0000000004deb398 is at 
> entry_point+24 in (nmethod*)0x0000000004deb210 R12=0x00000000609a8730 
> is an unknown value R13=0x0000000000000000 is an unknown value 
> R14=0x0000000000000001 is an unknown value R15=0x0000000000000000 is 
> an unknown value 
> 
> 
> Stack: [0x00000000026a0000,0x00000000027a0000], 
> sp=0x000000000279a700, free space=1001k Native frames: (J=compiled 
> Java code, j=interpreted, Vv=VM code, C=native code) C 
> 0x000000005f8c04fa C 0x000000005f8bf2e3 C 0x0000000004deb447 
> 
> Java frames: (J=compiled Java code, j=interpreted, Vv=VM code) J 10363 
> org.eclipse.swt.internal.win32.OS.HeapAlloc(JII)J (0 bytes) @ 
> 0x0000000004deb3c9 [0x0000000004deb380+0x49] j 
> org.eclipse.swt.widgets.CoolBar.createItem(Lorg/eclipse/swt/widgets/CoolItem;I)V+114 
> j 
> org.eclipse.swt.widgets.CoolItem.<init>(Lorg/eclipse/swt/widgets/CoolBar;I)V+17 
> j 
> fr.ifp.temisflow.api.basintools.ui.ui.widget.CoolItemFactory.createCoolItem(ILorg/eclipse/swt/widgets/Control;II)Lorg/eclipse/swt/widgets/CoolItem;+58 

怒鳴ると、私のVMの引数は他の環境変数は次のとおりです。

> VM Arguments: jvm_args: 
> -agentlib:jdwp=transport=dt_socket,suspend=y,address=localhost:58325 -Xms400m -Xmx4000m -XX:-UseGCOverheadLimit -XX:+UseConcMarkSweepGC -XX:+AggressiveOpts -Dfile.encoding=Cp1252 java_command: org.eclipse.equinox.launcher.Main -launcher 

> -os win32 -ws win32 -arch x86_64 -nl en_GB -consoleLog java_class_path (initial): 
> C:\Users\.metadata\.plugins\org.eclipse.pde.core\.bundle_pool\plugins\org.eclipse.equinox.launcher_1.3.0.v20140415-2008.jar 
> Launcher Type: SUN_STANDARD 
> 
> Environment Variables: PATH=C:/Program 
> Files/Java/jre1.8.0_102/bin/server;C:/Program 
> Files/Java/jre1.8.0_102/bin;C:/Program 
> Files/Java/jre1.8.0_102/lib/amd64;C:\Program Files (x86)\Common 
> Files\Intel\Shared Libraries\redist\intel64\mpirt;C:\Program Files 
> (x86)\Common Files\Intel\Shared 
> Libraries\redist\intel64\compiler;C:\ProgramData\Oracle\Java\javapath;C:\windows\system32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\;C:\Program 
> Files (x86)\WinMerge;C:\Program Files (x86)\Common 
> Files\SYSTEM\MSMAPI\1036;C:\Users\eclipse; 
> USERNAME=** OS=Windows_NT PROCESSOR_IDENTIFIER=Intel64 Family 6 
> Model 26 Stepping 5, GenuineIntel 
> 
> 
> 
> --------------- S Y S T E M --------------- 
> 
> OS: Windows 7 , 64 bit Build 7601 (6.1.7601.23572) 
> 
> CPU:total 4 (4 cores per cpu, 2 threads per core) family 6 model 26 
> stepping 5, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1, 
> sse4.2, popcnt, ht, tsc, tscinvbit, tscinv 
> 
> Memory: 4k page, physical 12580408k(5019496k free), swap 
> 25158956k(16067112k free) 
> 
> vm_info: Java HotSpot(TM) 64-Bit Server VM (25.102-b14) for 
> windows-amd64 JRE (1.8.0_102-b14), built on Jun 22 2016 13:15:21 by 
> "java_re" with MS VC++ 10.0 (VS2010) 

iも中の.metadataにログを見てクラッシュ時にはワークスペースがログに記録されません。

Java 8のJavaの致命的なエラーを解決するには、解決策や手順、ルールのスカウトがありますか?

+3

あなたが助けてくれるほど十分な情報を私たちに与えていない。クラッシュは何ですか?詳細を教えてください。 SWTとJFaceを使用したEclipse RCPは一般的にJava 8で正常に動作します。 –

+0

これは重いe3アプリケーションです。エディタを開こうとするとクラッシュを再現できますが、クラッシュがどこでどのように発生したか、異常なメモリの動作を検出するためのあなたのキットは、すべてのグラフが正常であるようです。 – Anas

+0

ワークスペース.metadataディレクトリ内の.logファイルを探します。 –

答えて

0

RAMを確認してください。

メモリー診断ツールを実行してRAMモジュールの1つに障害があることが判明するまで、非常に同じエラーEXCEPTION_ACCESS_VIOLATION (0xc0000005)(数週間)が数週間続きました。

参考:JVM Crashing EXCEPTION_ACCESS_VIOLATION (0xc0000005)

PS:私はちょうどあなたがより速くあなたの問題を解決することができます答えを投稿しています。私はおそらくあなたが私の答えを認めるとすぐに嘘としてその問題にフラグを立てるでしょう。

+0

私はWindowsツールを実行してメモリを診断しますが、エラーは検出されませんでした。メモリ(ヒープとヒープ以外のヒープ)のグラフを表示するためにはすでにあなたのキットを実行しましたが、メモリは割り当てを超えていません。記憶上の問題は見られなかった。 – Anas