在使用ant编译项目时,出现如下的错误:
[javac] 编译器 (1.5.0_12) 中出现异常。 如果在 Bug Parade 中没有找到该错误,请在 Java Developer Connection (http://java.sun.com/webapps/bugreport) 对该错误进行归档。 请在报告中附上您的程序和以下诊断信息。谢谢您的合作。
[javac] java.lang.OutofMemory: {unused}
[javac] at com.sun.tools.javac.tree.TreeMaker$AnnotationBuilder.visitArray(TreeMaker.java:634)
[javac] at com.sun.tools.javac.code.Attribute$Array.accept(Attribute.java:124)
[javac] at com.sun.tools.javac.tree.TreeMaker$AnnotationBuilder.translate(TreeMaker.java:637)
[javac] at com.sun.tools.javac.tree.TreeMaker$AnnotationBuilder.visitCompoundInternal(TreeMaker.java:628)
[javac] at com.sun.tools.javac.tree.TreeMaker$AnnotationBuilder.translate(TreeMaker.java:641)
[javac] at com.sun.tools.javac.tree.TreeMaker.Annotation(TreeMaker.java:649)
[javac] at com.sun.tools.javac.tree.TreeMaker.Annotations(TreeMaker.java:570)
[javac] at com.sun.tools.javac.tree.TreeMaker.VarDef(TreeMaker.java:554)
[javac] at com.sun.tools.javac.comp.Lower.visitArrayForeachLoop(Lower.java:2808)
[javac] at com.sun.tools.javac.comp.Lower.visitForeachLoop(Lower.java:2757)
[javac] at com.sun.tools.javac.tree.Tree$ForeachLoop.accept(Tree.java:597)
[javac] at com.sun.tools.javac.comp.Lower.translate(Lower.java:1881)
[javac] at com.sun.tools.javac.tree.TreeTranslator.translate(TreeTranslator.java:54)
[javac] at com.sun.tools.javac.tree.TreeTranslator.visitBlock(TreeTranslator.java:145)
[javac] at com.sun.tools.javac.comp.Lower.visitBlock(Lower.java:2927)
[javac] at com.sun.tools.javac.tree.Tree$Block.accept(Tree.java:535)
[javac] at com.sun.tools.javac.comp.Lower.translate(Lower.java:1881)
[javac] at com.sun.tools.javac.tree.TreeTranslator.visitMethodDef(TreeTranslator.java:129)
[javac] at com.sun.tools.javac.comp.Lower.visitMethodDefInternal(Lower.java:2267)
[javac] at com.sun.tools.javac.comp.Lower.visitMethodDef(Lower.java:2186)
[javac] at com.sun.tools.javac.tree.Tree$MethodDef.accept(Tree.java:478)
[javac] at com.sun.tools.javac.comp.Lower.translate(Lower.java:1881)
[javac] at com.sun.tools.javac.comp.Lower.visitClassDef(Lower.java:1989)
[javac] at com.sun.tools.javac.tree.Tree$ClassDef.accept(Tree.java:434)
[javac] at com.sun.tools.javac.comp.Lower.translate(Lower.java:1881)
[javac] at com.sun.tools.javac.comp.Lower.translate(Lower.java:1901)
[javac] at com.sun.tools.javac.comp.Lower.translateTopLevelClass(Lower.java:3064)
[javac] at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:487)
[javac] at com.sun.tools.javac.main.Main.compile(Main.java:592)
[javac] at com.sun.tools.javac.main.Main.compile(Main.java:544)
[javac] at com.sun.tools.javac.Main.compile(Main.java:67)
[javac] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[javac] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
[javac] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
[javac] at java.lang.reflect.Method.invoke(Unknown Source)
[javac] at org.apache.tools.ant.taskdefs.compilers.Javac13.execute(Javac13.java:56)
[javac] at org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:997)
[javac] at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:820)
[javac] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
[javac] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[javac] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
[javac] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
[javac] at java.lang.reflect.Method.invoke(Unknown Source)
[javac] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105)
[javac] at org.apache.tools.ant.Task.perform(Task.java:348)
[javac] at org.apache.tools.ant.Target.execute(Target.java:357)
[javac] at org.apache.tools.ant.Target.performTasks(Target.java:385)
[javac] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
[javac] at org.apache.tools.ant.Project.executeTarget(Project.java:1298)
[javac] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
[javac] at org.eclipse.ant.internal.ui.antsupport.EclipseDefaultExecutor.executeTargets(EclipseDefaultExecutor.java:32)
[javac] at org.apache.tools.ant.Project.executeTargets(Project.java:1181)
[javac] at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.run(InternalAntRunner.java:423)
[javac] at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.main(InternalAntRunner.java:137)
在网上找了一下,只有一个帖子(http://dev2dev.bea.com.cn/bbs/thread.jspa?forumID=124&threadID=44481&tstart=30),说的是因为加了 @SuppressWarnings标签, 可是我的项目里根本没有这个,jdk重装无效,eclipse重装无效,搞得精疲力尽,后来搞了个以前在本地备份的版本测试,居然可以编译,晕死.
删除了当前项目,将原来的项目导入,然后编译,又从cvs比对,后来整个cvs的东西都下来了,又出这个异常了.后来看到在编译的时候ant报很多中文编码无法识别的错误,猜想是不是总是填类中文太多了,日,想到就赶紧测试,在删除了几个类中的中文之后,问题不再复现,汗一个!!!!!!!
希望遇到此类问题的朋友不要跟我一样,折腾了半天居然是这个问题,整个系统差点没重装了:/