B
bdobby
Hi.
I have an ant build file which uses xdoclet to generate various
artefacts (EJB interfaces, config files, etc). Several of the xdoclet
steps use custom templates. One of these steps (always the same one)
occasionally (about one in every ten times) crashes the build with the
following error:
"An unexpected exception has been detected in native code outside the
VM"
(full info below).
Can anyone suggest how I could go about preventing this?
TIA
Brian
java -version
java version "1.4.2_05"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_05-b04)
Java HotSpot(TM) Client VM (build 1.4.2_05-b04, mixed mode)
OS is Windows XP
The xdoclet template is:
<XDTComment:comment>
--------------------------------------------------------------------------
Generate a dwr.xml that references all methods in the specified
classes.
--------------------------------------------------------------------------
</XDTComment:comment><?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC
"-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN"
"http://www.getahead.ltd.uk/dwr/dwr10.dtd">
<!-- Generated by XDoclet; do not modify! -->
<dwr>
<allow>
<XDTClass:forAllClasses>
<create creator="new" javascript="<XDTClass:className/>">
<param name="class" value="<XDTClass:fullClassName/>"/>
</create>
</XDTClass:forAllClasses>
<convert converter="bean" match="com.kallik.assetManager.api.*" />
<convert converter="bean" match="com.kallik.common.helpers.Page" />
<convert converter="bean" match="com.kallik.common.helpers.Range"
/>
<convert converter="bean"
match="com.kallik.assetManager.helpers.Criterion" />
<convert converter="bean"
match="com.kallik.assetManager.helpers.SimpleSearchResultBean" />
</allow>
</dwr>
The full error info is:
..
Unexpected Signal : EXCEPTION_ACCESS_VIOLATION (0xc0000005) occurred at
PC=0x7C92AE22
Function=RtlImpersonateSelf+0x3A5
Library=C:\WINDOWS\system32\ntdll.dll
Current Java thread:
at java.util.zip.ZipFile.getEntry(Native Method)
at java.util.zip.ZipFile.getEntry(ZipFile.java:146)
- locked <0x105b6570> (a java.util.zip.ZipFile)
at
org.apache.tools.ant.AntClassLoader.getResourceStream(AntClassLoader.java:745)
at
org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader.java:1133)
at
org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1090)
at
org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:960)
- locked <0x105878d0> (a org.apache.tools.ant.loader.AntClassLoader2)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
- locked <0x105878d0> (a org.apache.tools.ant.loader.AntClassLoader2)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
at
org.apache.tools.ant.loader.AntClassLoader2.defineClassFromData(AntClassLoader2.java:76)
at
org.apache.tools.ant.AntClassLoader.getClassFromStream(AntClassLoader.java:1073)
at
org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader.java:1137)
at
org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1090)
at
org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:960)
- locked <0x105878d0> (a org.apache.tools.ant.loader.AntClassLoader2)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
- locked <0x105878d0> (a org.apache.tools.ant.loader.AntClassLoader2)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:219)
at xjavadoc.XJavaDoc.getClass(XJavaDoc.java:733)
at xjavadoc.XJavaDoc.getXClass(XJavaDoc.java:413)
at xjavadoc.SourceClass.qualify(SourceClass.java:376)
at
xjavadoc.AbstractClass.resolveImportedClasses(AbstractClass.java:822)
at
xjavadoc.SimpleParser.ClassOrInterfaceDeclaration(SimpleParser.java:533)
at xjavadoc.SimpleParser.TypeDeclaration(SimpleParser.java:472)
at xjavadoc.SimpleParser.CompilationUnit(SimpleParser.java:322)
at xjavadoc.SimpleParser.populate(SimpleParser.java:264)
at xjavadoc.SourceClass.parse(SourceClass.java:757)
at xjavadoc.SourceClass.<init>(SourceClass.java:124)
at xjavadoc.XJavaDoc.scanAndPut(XJavaDoc.java:885)
at xjavadoc.XJavaDoc.getXClass(XJavaDoc.java:406)
at xjavadoc.SourceClass.qualify(SourceClass.java:376)
at
xjavadoc.AbstractClass.resolveImportedClasses(AbstractClass.java:822)
at
xjavadoc.SimpleParser.ClassOrInterfaceDeclaration(SimpleParser.java:533)
at xjavadoc.SimpleParser.TypeDeclaration(SimpleParser.java:472)
at xjavadoc.SimpleParser.CompilationUnit(SimpleParser.java:322)
at xjavadoc.SimpleParser.populate(SimpleParser.java:264)
at xjavadoc.SourceClass.parse(SourceClass.java:757)
at xjavadoc.SourceClass.<init>(SourceClass.java:124)
at xjavadoc.XJavaDoc.scanAndPut(XJavaDoc.java:885)
at xjavadoc.XJavaDoc.getXClass(XJavaDoc.java:406)
at xjavadoc.XJavaDoc.getOuterSourceClasses(XJavaDoc.java:760)
at xjavadoc.XJavaDoc.getSourceClasses(XJavaDoc.java:323)
at
xdoclet.tagshandler.AbstractProgramElementTagsHandler.getAllClasses(AbstractProgramElementTagsHandler.java:101)
at
xdoclet.tagshandler.ClassTagsHandler.forAllClasses(ClassTagsHandler.java:374)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at xdoclet.template.TemplateEngine.invoke(TemplateEngine.java:641)
at
xdoclet.template.TemplateEngine.invokeMethod(TemplateEngine.java:567)
at
xdoclet.template.TemplateEngine.invokeBlockMethod(TemplateEngine.java:965)
at
xdoclet.template.TemplateEngine.handleBlockTag(TemplateEngine.java:932)
at xdoclet.template.TemplateEngine.handleTag(TemplateEngine.java:472)
at xdoclet.template.TemplateEngine.generate(TemplateEngine.java:348)
at xdoclet.template.TemplateEngine.start(TemplateEngine.java:415)
at xdoclet.TemplateSubTask.startEngine(TemplateSubTask.java:573)
at
xdoclet.TemplateSubTask.startProcessForAll(TemplateSubTask.java:629)
at xdoclet.TemplateSubTask.startProcess(TemplateSubTask.java:610)
at xdoclet.TemplateSubTask.execute(TemplateSubTask.java:498)
at xdoclet.XDocletMain.start(XDocletMain.java:49)
at xdoclet.DocletTask.start(DocletTask.java:468)
at xjavadoc.ant.XJavadocTask.execute(XJavadocTask.java:105)
at
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
at org.apache.tools.ant.Task.perform(Task.java:364)
at org.apache.tools.ant.Target.execute(Target.java:341)
at org.apache.tools.ant.Target.performTasks(Target.java:369)
at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
at org.apache.tools.ant.Project.executeTargets(Project.java:1062)
at org.apache.tools.ant.Main.runBuild(Main.java:673)
at org.apache.tools.ant.Main.startAnt(Main.java:188)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:196)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:55)
Dynamic libraries:
0x00400000 - 0x0040B000 C:\j2sdk1.4.2_05\bin\java.exe
0x7C900000 - 0x7C9B0000 C:\WINDOWS\system32\ntdll.dll
0x7C800000 - 0x7C8F4000 C:\WINDOWS\system32\kernel32.dll
0x77DD0000 - 0x77E6B000 C:\WINDOWS\system32\ADVAPI32.dll
0x77E70000 - 0x77F01000 C:\WINDOWS\system32\RPCRT4.dll
0x77C10000 - 0x77C68000 C:\WINDOWS\system32\MSVCRT.dll
0x08000000 - 0x08139000 C:\j2sdk1.4.2_05\jre\bin\client\jvm.dll
0x77D40000 - 0x77DD0000 C:\WINDOWS\system32\USER32.dll
0x77F10000 - 0x77F57000 C:\WINDOWS\system32\GDI32.dll
0x76B40000 - 0x76B6D000 C:\WINDOWS\system32\WINMM.dll
0x10000000 - 0x10007000 C:\j2sdk1.4.2_05\jre\bin\hpi.dll
0x00390000 - 0x0039E000 C:\j2sdk1.4.2_05\jre\bin\verify.dll
0x003B0000 - 0x003C9000 C:\j2sdk1.4.2_05\jre\bin\java.dll
0x003D0000 - 0x003DD000 C:\j2sdk1.4.2_05\jre\bin\zip.dll
0x76C90000 - 0x76CB8000 C:\WINDOWS\system32\imagehlp.dll
0x59A60000 - 0x59B01000 C:\WINDOWS\system32\DBGHELP.dll
0x77C00000 - 0x77C08000 C:\WINDOWS\system32\VERSION.dll
0x76BF0000 - 0x76BFB000 C:\WINDOWS\system32\PSAPI.DLL
Heap at VM Abort:
Heap
def new generation total 576K, used 343K [0x10010000, 0x100b0000,
0x104f0000)
eden space 512K, 54% used [0x10010000, 0x10055c30, 0x10090000)
from space 64K, 100% used [0x100a0000, 0x100b0000, 0x100b0000)
to space 64K, 0% used [0x10090000, 0x10090000, 0x100a0000)
tenured generation total 2208K, used 1421K [0x104f0000, 0x10718000,
0x14010000)
the space 2208K, 64% used [0x104f0000, 0x106535c0, 0x10653600,
0x10718000)
compacting perm gen total 7168K, used 6994K [0x14010000, 0x14710000,
0x18010000)
the space 7168K, 97% used [0x14010000, 0x146e4880, 0x146e4a00,
0x14710000)
Local Time = Thu Jan 19 15:40:45 2006
Elapsed Time = 3
#
# The exception above was detected in native code outside the VM
#
# Java VM: Java HotSpot(TM) Client VM (1.4.2_05-b04 mixed mode)
#
I have an ant build file which uses xdoclet to generate various
artefacts (EJB interfaces, config files, etc). Several of the xdoclet
steps use custom templates. One of these steps (always the same one)
occasionally (about one in every ten times) crashes the build with the
following error:
"An unexpected exception has been detected in native code outside the
VM"
(full info below).
Can anyone suggest how I could go about preventing this?
TIA
Brian
java -version
java version "1.4.2_05"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_05-b04)
Java HotSpot(TM) Client VM (build 1.4.2_05-b04, mixed mode)
OS is Windows XP
The xdoclet template is:
<XDTComment:comment>
--------------------------------------------------------------------------
Generate a dwr.xml that references all methods in the specified
classes.
--------------------------------------------------------------------------
</XDTComment:comment><?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC
"-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN"
"http://www.getahead.ltd.uk/dwr/dwr10.dtd">
<!-- Generated by XDoclet; do not modify! -->
<dwr>
<allow>
<XDTClass:forAllClasses>
<create creator="new" javascript="<XDTClass:className/>">
<param name="class" value="<XDTClass:fullClassName/>"/>
</create>
</XDTClass:forAllClasses>
<convert converter="bean" match="com.kallik.assetManager.api.*" />
<convert converter="bean" match="com.kallik.common.helpers.Page" />
<convert converter="bean" match="com.kallik.common.helpers.Range"
/>
<convert converter="bean"
match="com.kallik.assetManager.helpers.Criterion" />
<convert converter="bean"
match="com.kallik.assetManager.helpers.SimpleSearchResultBean" />
</allow>
</dwr>
The full error info is:
..
Unexpected Signal : EXCEPTION_ACCESS_VIOLATION (0xc0000005) occurred at
PC=0x7C92AE22
Function=RtlImpersonateSelf+0x3A5
Library=C:\WINDOWS\system32\ntdll.dll
Current Java thread:
at java.util.zip.ZipFile.getEntry(Native Method)
at java.util.zip.ZipFile.getEntry(ZipFile.java:146)
- locked <0x105b6570> (a java.util.zip.ZipFile)
at
org.apache.tools.ant.AntClassLoader.getResourceStream(AntClassLoader.java:745)
at
org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader.java:1133)
at
org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1090)
at
org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:960)
- locked <0x105878d0> (a org.apache.tools.ant.loader.AntClassLoader2)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
- locked <0x105878d0> (a org.apache.tools.ant.loader.AntClassLoader2)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
at
org.apache.tools.ant.loader.AntClassLoader2.defineClassFromData(AntClassLoader2.java:76)
at
org.apache.tools.ant.AntClassLoader.getClassFromStream(AntClassLoader.java:1073)
at
org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader.java:1137)
at
org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1090)
at
org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:960)
- locked <0x105878d0> (a org.apache.tools.ant.loader.AntClassLoader2)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
- locked <0x105878d0> (a org.apache.tools.ant.loader.AntClassLoader2)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:219)
at xjavadoc.XJavaDoc.getClass(XJavaDoc.java:733)
at xjavadoc.XJavaDoc.getXClass(XJavaDoc.java:413)
at xjavadoc.SourceClass.qualify(SourceClass.java:376)
at
xjavadoc.AbstractClass.resolveImportedClasses(AbstractClass.java:822)
at
xjavadoc.SimpleParser.ClassOrInterfaceDeclaration(SimpleParser.java:533)
at xjavadoc.SimpleParser.TypeDeclaration(SimpleParser.java:472)
at xjavadoc.SimpleParser.CompilationUnit(SimpleParser.java:322)
at xjavadoc.SimpleParser.populate(SimpleParser.java:264)
at xjavadoc.SourceClass.parse(SourceClass.java:757)
at xjavadoc.SourceClass.<init>(SourceClass.java:124)
at xjavadoc.XJavaDoc.scanAndPut(XJavaDoc.java:885)
at xjavadoc.XJavaDoc.getXClass(XJavaDoc.java:406)
at xjavadoc.SourceClass.qualify(SourceClass.java:376)
at
xjavadoc.AbstractClass.resolveImportedClasses(AbstractClass.java:822)
at
xjavadoc.SimpleParser.ClassOrInterfaceDeclaration(SimpleParser.java:533)
at xjavadoc.SimpleParser.TypeDeclaration(SimpleParser.java:472)
at xjavadoc.SimpleParser.CompilationUnit(SimpleParser.java:322)
at xjavadoc.SimpleParser.populate(SimpleParser.java:264)
at xjavadoc.SourceClass.parse(SourceClass.java:757)
at xjavadoc.SourceClass.<init>(SourceClass.java:124)
at xjavadoc.XJavaDoc.scanAndPut(XJavaDoc.java:885)
at xjavadoc.XJavaDoc.getXClass(XJavaDoc.java:406)
at xjavadoc.XJavaDoc.getOuterSourceClasses(XJavaDoc.java:760)
at xjavadoc.XJavaDoc.getSourceClasses(XJavaDoc.java:323)
at
xdoclet.tagshandler.AbstractProgramElementTagsHandler.getAllClasses(AbstractProgramElementTagsHandler.java:101)
at
xdoclet.tagshandler.ClassTagsHandler.forAllClasses(ClassTagsHandler.java:374)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at xdoclet.template.TemplateEngine.invoke(TemplateEngine.java:641)
at
xdoclet.template.TemplateEngine.invokeMethod(TemplateEngine.java:567)
at
xdoclet.template.TemplateEngine.invokeBlockMethod(TemplateEngine.java:965)
at
xdoclet.template.TemplateEngine.handleBlockTag(TemplateEngine.java:932)
at xdoclet.template.TemplateEngine.handleTag(TemplateEngine.java:472)
at xdoclet.template.TemplateEngine.generate(TemplateEngine.java:348)
at xdoclet.template.TemplateEngine.start(TemplateEngine.java:415)
at xdoclet.TemplateSubTask.startEngine(TemplateSubTask.java:573)
at
xdoclet.TemplateSubTask.startProcessForAll(TemplateSubTask.java:629)
at xdoclet.TemplateSubTask.startProcess(TemplateSubTask.java:610)
at xdoclet.TemplateSubTask.execute(TemplateSubTask.java:498)
at xdoclet.XDocletMain.start(XDocletMain.java:49)
at xdoclet.DocletTask.start(DocletTask.java:468)
at xjavadoc.ant.XJavadocTask.execute(XJavadocTask.java:105)
at
org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
at org.apache.tools.ant.Task.perform(Task.java:364)
at org.apache.tools.ant.Target.execute(Target.java:341)
at org.apache.tools.ant.Target.performTasks(Target.java:369)
at org.apache.tools.ant.Project.executeTarget(Project.java:1214)
at org.apache.tools.ant.Project.executeTargets(Project.java:1062)
at org.apache.tools.ant.Main.runBuild(Main.java:673)
at org.apache.tools.ant.Main.startAnt(Main.java:188)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:196)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:55)
Dynamic libraries:
0x00400000 - 0x0040B000 C:\j2sdk1.4.2_05\bin\java.exe
0x7C900000 - 0x7C9B0000 C:\WINDOWS\system32\ntdll.dll
0x7C800000 - 0x7C8F4000 C:\WINDOWS\system32\kernel32.dll
0x77DD0000 - 0x77E6B000 C:\WINDOWS\system32\ADVAPI32.dll
0x77E70000 - 0x77F01000 C:\WINDOWS\system32\RPCRT4.dll
0x77C10000 - 0x77C68000 C:\WINDOWS\system32\MSVCRT.dll
0x08000000 - 0x08139000 C:\j2sdk1.4.2_05\jre\bin\client\jvm.dll
0x77D40000 - 0x77DD0000 C:\WINDOWS\system32\USER32.dll
0x77F10000 - 0x77F57000 C:\WINDOWS\system32\GDI32.dll
0x76B40000 - 0x76B6D000 C:\WINDOWS\system32\WINMM.dll
0x10000000 - 0x10007000 C:\j2sdk1.4.2_05\jre\bin\hpi.dll
0x00390000 - 0x0039E000 C:\j2sdk1.4.2_05\jre\bin\verify.dll
0x003B0000 - 0x003C9000 C:\j2sdk1.4.2_05\jre\bin\java.dll
0x003D0000 - 0x003DD000 C:\j2sdk1.4.2_05\jre\bin\zip.dll
0x76C90000 - 0x76CB8000 C:\WINDOWS\system32\imagehlp.dll
0x59A60000 - 0x59B01000 C:\WINDOWS\system32\DBGHELP.dll
0x77C00000 - 0x77C08000 C:\WINDOWS\system32\VERSION.dll
0x76BF0000 - 0x76BFB000 C:\WINDOWS\system32\PSAPI.DLL
Heap at VM Abort:
Heap
def new generation total 576K, used 343K [0x10010000, 0x100b0000,
0x104f0000)
eden space 512K, 54% used [0x10010000, 0x10055c30, 0x10090000)
from space 64K, 100% used [0x100a0000, 0x100b0000, 0x100b0000)
to space 64K, 0% used [0x10090000, 0x10090000, 0x100a0000)
tenured generation total 2208K, used 1421K [0x104f0000, 0x10718000,
0x14010000)
the space 2208K, 64% used [0x104f0000, 0x106535c0, 0x10653600,
0x10718000)
compacting perm gen total 7168K, used 6994K [0x14010000, 0x14710000,
0x18010000)
the space 7168K, 97% used [0x14010000, 0x146e4880, 0x146e4a00,
0x14710000)
Local Time = Thu Jan 19 15:40:45 2006
Elapsed Time = 3
#
# The exception above was detected in native code outside the VM
#
# Java VM: Java HotSpot(TM) Client VM (1.4.2_05-b04 mixed mode)
#