Java 与 play 框架崩溃

Posted

技术标签:

【中文标题】Java 与 play 框架崩溃【英文标题】:Java crash with play framework 【发布时间】:2012-12-08 16:29:27 【问题描述】:

我正在为一个项目使用 Play Framework,一旦我运行网站 Java 崩溃。

我试图解决这个问题,发现当我删除一些 CRUD 类时,应用程序正在运行,但是当这些 CRUD 类在项目中时,应用程序崩溃了。

我查看了日志文件,发现 PSPermGen 的使用率为 99%。所以我在命令行中添加了这些选项:

-XX:MaxPermSize=512M -XX:PermSize=256M -Xms1024M -Xmx4096M

然后我看到 PSYoungGen 的使用率为 99% 。所以我增加了堆大小。

现在应用程序仍然崩溃,但我不知道为什么。

你能帮我找出问题吗?

这是崩溃日志:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000000006af328cf, pid=2440, tid=1796
#
# JRE version: 7.0_02-b13
# Java VM: Java HotSpot(TM) 64-Bit Server VM (22.0-b10 mixed mode windows-amd64 compressed oops)
# Problematic frame:
# V  [jvm.dll+0x3e28cf]
#
# 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.sun.com/bugreport/crash.jsp
#

---------------  T H R E A D  ---------------

Current thread (0x000000000748c000):  JavaThread "C2 CompilerThread0" daemon [_thread_in_native, id=1796, stack(0x0000000008a70000,0x0000000008b70000)]

siginfo: ExceptionCode=0xc0000005, reading address 0x0000000000000008

Registers:
RAX=0x0000000000000000, RBX=0x0000000008b6ce60, RCX=0x000000000b1a4720, RDX=0x0000000000000000
RSP=0x0000000008b6c010, RBP=0x0000000008b6c1c0, RSI=0x000000000c9e64f8, RDI=0x0000000000000000
R8 =0x000000000bf83bf0, R9 =0x0000000000002000, R10=0x0000000009b260d0, R11=0x0000000000000000
R12=0x000000000ac66560, R13=0x000000000a2f1c28, R14=0x0000000008b6c0e0, R15=0x0000000008b6c100
RIP=0x000000006af328cf, EFLAGS=0x0000000000010206

Top of Stack: (sp=0x0000000008b6c010)
0x0000000008b6c010:   0000000008b6ce60 000000000ac66560
0x0000000008b6c020:   000000000b4711b0 0000000000000000
0x0000000008b6c030:   000000000ac66560 0000000000000002
0x0000000008b6c040:   000000000a2f8b88 000000006af33389
0x0000000008b6c050:   0000000008b6c1c0 00000000000001a0
0x0000000008b6c060:   0000000008b6c148 0000000008b6c1c0
0x0000000008b6c070:   0000000000000020 000000000a261450
0x0000000008b6c080:   0000000000000000 000000000000c020
0x0000000008b6c090:   00000000091008b0 0000000008b6c1c0
0x0000000008b6c0a0:   0000000007477a10 0000000000000002
0x0000000008b6c0b0:   0000000008b6ce60 000000006af354f7
0x0000000008b6c0c0:   0000000008b6ce60 0000000000000001
0x0000000008b6c0d0:   0000000000000002 0000000008b6c148
0x0000000008b6c0e0:   0000000007477a10 0000000000000200
0x0000000008b6c0f0:   0000000009aebc10 00000000000001a1
0x0000000008b6c100:   000000006b0944f8 0000000007477a10 

Instructions: (pc=0x000000006af328cf)
0x000000006af328af:   48 3b f0 0f 84 87 01 00 00 44 8b 4b 28 0f 1f 40
0x000000006af328bf:   00 41 8b 53 28 4c 8b 83 e0 09 00 00 4d 8b 1c d0
0x000000006af328cf:   49 8b 43 08 48 39 38 75 2d 0f 1f 84 00 00 00 00
0x000000006af328df:   00 41 8b 43 28 41 3b c1 73 0c 8b c8 48 8b 43 30 


Register to memory mapping:

RAX=0x0000000000000000 is an unknown value
RBX=0x0000000008b6ce60 is pointing into the stack for thread: 0x000000000748c000
RCX=0x000000000b1a4720 is an unknown value
RDX=0x0000000000000000 is an unknown value
RSP=0x0000000008b6c010 is pointing into the stack for thread: 0x000000000748c000
RBP=0x0000000008b6c1c0 is pointing into the stack for thread: 0x000000000748c000
RSI=0x000000000c9e64f8 is an unknown value
RDI=0x0000000000000000 is an unknown value
R8 =0x000000000bf83bf0 is an unknown value
R9 =0x0000000000002000 is an unknown value
R10=0x0000000009b260d0 is an unknown value
R11=0x0000000000000000 is an unknown value
R12=0x000000000ac66560 is an unknown value
R13=0x000000000a2f1c28 is an unknown value
R14=0x0000000008b6c0e0 is pointing into the stack for thread: 0x000000000748c000
R15=0x0000000008b6c100 is pointing into the stack for thread: 0x000000000748c000


Stack: [0x0000000008a70000,0x0000000008b70000],  sp=0x0000000008b6c010,  free space=1008k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [jvm.dll+0x3e28cf]


Current CompileTask:
C2:   8440  433             jregex.Pretokenizer::next (1064 bytes)


---------------  P R O C E S S  ---------------

Java Threads: ( => current thread )
  0x0000000009196000 JavaThread "play-thread-1" [_thread_in_vm, id=4736, stack(0x000000000b020000,0x000000000b120000)]
  0x0000000009195800 JavaThread "New I/O  worker #1" [_thread_in_native, id=8988, stack(0x000000000ad20000,0x000000000ae20000)]
  0x0000000009195000 JavaThread "DestroyJavaVM" [_thread_blocked, id=7500, stack(0x0000000002690000,0x0000000002790000)]
  0x0000000009194000 JavaThread "New I/O server boss #1 ([id: 0x09981537, /0:0:0:0:0:0:0:0:9000])" [_thread_in_native, id=10084, stack(0x000000000ae60000,0x000000000af60000)]
  0x000000000749c800 JavaThread "Service Thread" daemon [_thread_blocked, id=10052, stack(0x0000000008de0000,0x0000000008ee0000)]
  0x0000000007491000 JavaThread "C2 CompilerThread1" daemon [_thread_in_native, id=5876, stack(0x0000000008c60000,0x0000000008d60000)]
=>0x000000000748c000 JavaThread "C2 CompilerThread0" daemon [_thread_in_native, id=1796, stack(0x0000000008a70000,0x0000000008b70000)]
  0x0000000007481800 JavaThread "JDWP Event Helper Thread" daemon [_thread_blocked, id=8056, stack(0x0000000007de0000,0x0000000007ee0000)]
  0x0000000007461800 JavaThread "JDWP Transport Listener: dt_socket" daemon [_thread_in_native, id=10236, stack(0x00000000088b0000,0x00000000089b0000)]
  0x000000000744a800 JavaThread "Attach Listener" daemon [_thread_blocked, id=7488, stack(0x0000000008430000,0x0000000008530000)]
  0x0000000007449800 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=9784, stack(0x0000000008280000,0x0000000008380000)]
  0x00000000073c7000 JavaThread "Finalizer" daemon [_thread_blocked, id=9732, stack(0x0000000008110000,0x0000000008210000)]
  0x00000000073be800 JavaThread "Reference Handler" daemon [_thread_blocked, id=10176, stack(0x0000000008010000,0x0000000008110000)]

Other Threads:
  0x00000000073b3000 VMThread [stack: 0x0000000007f00000,0x0000000008000000] [id=5040]
  0x00000000074e1000 WatcherThread [stack: 0x0000000008ff0000,0x00000000090f0000] [id=9196]

VM state:not at safepoint (normal execution)

VM Mutex/Monitor currently owned by a thread: None

Heap
 PSYoungGen      total 305856K, used 243524K [0x00000007aaab0000, 0x00000007c0000000, 0x0000000800000000)
  eden space 262208K, 92% used [0x00000007aaab0000,0x00000007b9881190,0x00000007baac0000)
  from space 43648K, 0% used [0x00000007bd560000,0x00000007bd560000,0x00000007c0000000)
  to   space 43648K, 0% used [0x00000007baac0000,0x00000007baac0000,0x00000007bd560000)
 PSOldGen        total 699072K, used 0K [0x0000000700000000, 0x000000072aab0000, 0x00000007aaab0000)
  object space 699072K, 0% used [0x0000000700000000,0x0000000700000000,0x000000072aab0000)
 PSPermGen       total 262144K, used 23512K [0x00000006e0000000, 0x00000006f0000000, 0x0000000700000000)
  object space 262144K, 8% used [0x00000006e0000000,0x00000006e16f62a0,0x00000006f0000000)

Code Cache  [0x0000000002790000, 0x0000000002ab0000, 0x0000000005790000)
 total_blobs=1005 nmethods=418 adapters=547 free_code_cache=46058Kb largest_free_block=47116160

Dynamic libraries:
0x000000013f8e0000 - 0x000000013f913000     D:\Program Files\Java\jdk1.7.0_02\bin\java.exe
0x0000000076cd0000 - 0x0000000076e79000     C:\Windows\SYSTEM32\ntdll.dll
0x00000000765f0000 - 0x000000007670f000     C:\Windows\system32\kernel32.dll
0x000007fefd280000 - 0x000007fefd2ec000     C:\Windows\system32\KERNELBASE.dll
0x000007fefdcf0000 - 0x000007fefddcb000     C:\Windows\system32\ADVAPI32.dll
0x000007fefda10000 - 0x000007fefdaaf000     C:\Windows\system32\msvcrt.dll
0x000007fefed80000 - 0x000007fefed9f000     C:\Windows\SYSTEM32\sechost.dll
0x000007fefdbc0000 - 0x000007fefdced000     C:\Windows\system32\RPCRT4.dll
0x0000000076bd0000 - 0x0000000076cca000     C:\Windows\system32\USER32.dll
0x000007fefdb50000 - 0x000007fefdbb7000     C:\Windows\system32\GDI32.dll
0x000007fefd7d0000 - 0x000007fefd7de000     C:\Windows\system32\LPK.dll
0x000007fefde80000 - 0x000007fefdf49000     C:\Windows\system32\USP10.dll
0x000007fefb8d0000 - 0x000007fefbac4000     C:\Windows\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.7601.17514_none_fa396087175ac9ac\COMCTL32.dll
0x000007fefd910000 - 0x000007fefd981000     C:\Windows\system32\SHLWAPI.dll
0x000007fefeda0000 - 0x000007fefedce000     C:\Windows\system32\IMM32.DLL
0x000007fefd7e0000 - 0x000007fefd8e9000     C:\Windows\system32\MSCTF.dll
0x000000006e340000 - 0x000000006e411000     D:\Program Files\Java\jdk1.7.0_02\jre\bin\msvcr100.dll
0x000000006ab50000 - 0x000000006b22a000     D:\Program Files\Java\jdk1.7.0_02\jre\bin\server\jvm.dll
0x000007fef9a90000 - 0x000007fef9a99000     C:\Windows\system32\WSOCK32.dll
0x000007fefddd0000 - 0x000007fefde1d000     C:\Windows\system32\WS2_32.dll
0x000007fefd500000 - 0x000007fefd508000     C:\Windows\system32\NSI.dll
0x000007fefa8f0000 - 0x000007fefa92b000     C:\Windows\system32\WINMM.dll
0x0000000076e90000 - 0x0000000076e97000     C:\Windows\system32\PSAPI.DLL
0x0000000073180000 - 0x000000007318f000     D:\Program Files\Java\jdk1.7.0_02\jre\bin\verify.dll
0x000000006ead0000 - 0x000000006eaf8000     D:\Program Files\Java\jdk1.7.0_02\jre\bin\java.dll
0x000000006cac0000 - 0x000000006caf5000     D:\Program Files\Java\jdk1.7.0_02\jre\bin\jdwp.dll
0x000000006ca90000 - 0x000000006cab3000     D:\Program Files\Java\jdk1.7.0_02\jre\bin\instrument.dll
0x0000000071000000 - 0x0000000071008000     D:\Program Files\Java\jdk1.7.0_02\jre\bin\npt.dll
0x0000000073110000 - 0x0000000073125000     D:\Program Files\Java\jdk1.7.0_02\jre\bin\zip.dll
0x0000000071010000 - 0x0000000071019000     D:\Program Files\Java\jdk1.7.0_02\jre\bin\dt_socket.dll
0x000007fefc9a0000 - 0x000007fefc9f5000     C:\Windows\system32\mswsock.dll
0x000007fefc2f0000 - 0x000007fefc2f7000     C:\Windows\System32\wshtcpip.dll
0x0000000073080000 - 0x0000000073099000     D:\Program Files\Java\jdk1.7.0_02\jre\bin\net.dll
0x000007fefc990000 - 0x000007fefc997000     C:\Windows\System32\wship6.dll
0x0000000070c40000 - 0x0000000070c51000     D:\Program Files\Java\jdk1.7.0_02\jre\bin\nio.dll
0x000007fefca00000 - 0x000007fefca17000     C:\Windows\system32\CRYPTSP.dll
0x000007fefc700000 - 0x000007fefc747000     C:\Windows\system32\rsaenh.dll
0x000007fefc430000 - 0x000007fefc44e000     C:\Windows\system32\USERENV.dll
0x000007fefd130000 - 0x000007fefd13f000     C:\Windows\system32\profapi.dll
0x000007fefd060000 - 0x000007fefd06f000     C:\Windows\system32\CRYPTBASE.dll

VM Arguments:
jvm_args: -javaagent:D:\Projects\foo\Lib\play-custom\framework/play-master-localbuild.jar -XX:MaxPermSize=512M -XX:PermSize=256M -Xms1024M -Xmx4096M -XX:-UseSplitVerifier -Dfile.encoding=utf-8 -Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n -Dplay.debug=yes -Dapplication.path=D:\Projects\foo\Jeu -Dplay.id= 
java_command: play.server.Server 
Launcher Type: SUN_STANDARD

Environment Variables:
JAVA_HOME=D:\Program Files\Java\jdk1.7.0_02
CLASSPATH=.;C:\Program Files (x86)\Java\jre7\lib\ext\QTJava.zip
PATH=C:\Program Files (x86)\...........
USERNAME=Fabien
OS=Windows_NT
PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 30 Stepping 5, GenuineIntel



---------------  S Y S T E M  ---------------

OS: Windows 7 , 64 bit Build 7601 Service Pack 1

CPU:total 8 (4 cores per cpu, 2 threads per core) family 6 model 30 stepping 5, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, ht

Memory: 4k page, physical 12513668k(7766556k free), swap 25025484k(19054484k free)

vm_info: Java HotSpot(TM) 64-Bit Server VM (22.0-b10) for windows-amd64 JRE (1.7.0_02-b13), built on Nov 17 2011 13:51:15 by "java_re" with unknown MS VC++:1600

time: Sat Dec 08 16:25:25 2012
elapsed time: 8 seconds

【问题讨论】:

【参考方案1】:

您似乎遇到了 JVM 错误。我使用一些谷歌找到了以下内容:http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7064302

解决方案:将 JVM 更新到当前版本。

【讨论】:

谢谢,它解决了我的问题。应用程序不再崩溃。我更新到 Java 7u9

以上是关于Java 与 play 框架崩溃的主要内容,如果未能解决你的问题,请参考以下文章

如何将 Splunk 登录与 java 结合到游戏框架中?

Web 框架:Play 与 Spring MVC 有何不同? [关闭]

如何在 play 框架模型中导入 java 扩展?

play框架之简介

如何解析JSON使用Play框架

Java Play 框架 - NoClassDefFoundError:播放/配置