2012-10-01 70 views
1

我只收到以下錯誤的Java代碼運行mvn clean時:ArrayIndexOutOfBoundsException異常在編譯時使用Maven

An exception has occurred in the compiler (1.6.0_34). Please file a bug at the 
Java Developer Connection (http://java.sun.com/webapps/bugreport) after 
checking the Bug Parade for duplicates. Include your program and the following 
diagnostic in your report. Thank you. 
java.lang.ArrayIndexOutOfBoundsException: 117920 
at com.sun.tools.javac.zip.ZipFileIndex.get4ByteLittleEndian(ZipFileIndex.java:644) 
at com.sun.tools.javac.zip.ZipFileIndex.access$500(ZipFileIndex.java:29) 
at com.sun.tools.javac.zip.ZipFileIndex$ZipDirectory.readEntry(ZipFileIndex.java:740) 
at com.sun.tools.javac.zip.ZipFileIndex$ZipDirectory.buildIndex(ZipFileIndex.java:720) 
at com.sun.tools.javac.zip.ZipFileIndex$ZipDirectory.access$000(ZipFileIndex.java:652) 
at com.sun.tools.javac.zip.ZipFileIndex.checkIndex(ZipFileIndex.java:261) 
at com.sun.tools.javac.zip.ZipFileIndex.<init>(ZipFileIndex.java:209) 
at com.sun.tools.javac.zip.ZipFileIndex.getZipFileIndex(ZipFileIndex.java:115) 
at com.sun.tools.javac.util.DefaultFileManager.openArchive(DefaultFileManager.java:621) 
at com.sun.tools.javac.util.DefaultFileManager.listDirectory(DefaultFileManager.java:309) 
at com.sun.tools.javac.util.DefaultFileManager.list(DefaultFileManager.java:890) 
at com.sun.tools.javac.jvm.ClassReader.fillIn(ClassReader.java:2130) 
at com.sun.tools.javac.jvm.ClassReader.complete(ClassReader.java:1781) 
at com.sun.tools.javac.code.Symbol.complete(Symbol.java:384) 
at com.sun.tools.javac.comp.Enter.visitTopLevel(Enter.java:274) 
at com.sun.tools.javac.tree.JCTree$JCCompilationUnit.accept(JCTree.java:446) 
at com.sun.tools.javac.comp.Enter.classEnter(Enter.java:238) 
at com.sun.tools.javac.comp.Enter.classEnter(Enter.java:252) 
at com.sun.tools.javac.comp.Enter.complete(Enter.java:457) 
at com.sun.tools.javac.comp.Enter.main(Enter.java:442) 
at com.sun.tools.javac.main.JavaCompiler.enterTrees(JavaCompiler.java:822) 
at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:727) 
at com.sun.tools.javac.main.Main.compile(Main.java:353) 
at com.sun.tools.javac.main.Main.compile(Main.java:279) 
at com.sun.tools.javac.main.Main.compile(Main.java:270) 
at com.sun.tools.javac.Main.compile(Main.java:87) 
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:597) 
at org.codehaus.plexus.compiler.javac.JavacCompiler.compileInProcess0(JavacCompiler.java:551) 
at org.codehaus.plexus.compiler.javac.JavacCompiler.compileInProcess(JavacCompiler.java:526) 
at org.codehaus.plexus.compiler.javac.JavacCompiler.compile(JavacCompiler.java:167) 
at org.apache.maven.plugin.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:678) 
at org.apache.maven.plugin.CompilerMojo.execute(CompilerMojo.java:128) 
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101) 
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209) 
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) 
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) 
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84) 
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59) 
at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183) 
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161) 
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320) 
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) 
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) 
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) 
at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) 
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:597) 
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) 
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) 
at  org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) 

,我現在用的就是如下環境:

  • Eclipse的伽利略
  • 的Java 1.6.0_34(32位64位機器)
  • JBoss Seam 2.2
  • JBoss AS 5.1

可能是什麼問題?

+0

您是否閱讀過該消息? _「請在檢查Bug Parade上的重複項後,在Java開發人員連接(http://java.sun.com/webapps/bugreport)上提交一個錯誤。在您的報告中包含您的程序和以下診斷信息,謝謝。」_查看bugreport網站,看看是否有其他人報告過這一點。 –

+0

似乎它與合併的Jar文件有關,但很難說不知道你的項目在做什麼。 http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6232676 – noahlz

+0

我不知道如何重現這個錯誤,所以我沒有提交報告到bugreport的oracle頁面。我仍在研究如何以及爲何拋出異常! – rodrigocprates

回答

1

我不明白這個問題,但我找到了一個解決方案:我清理了我的.m2目錄並重新安裝了jdk。

當然,這是一種我們永遠無法重現的環境問題。

0

我也遇到過這個問題。我通過逐個減少pom依賴來解決這個問題。

最後我發現son-lib是問題的主要原因。所以我刪除了這種依賴關係,一切正常。

+0

你能解釋一下_why_刪除這行有幫助嗎?避免這個問題與修復它不同。 – CodingNinja

+0

對不起,我不知道爲什麼工作。對我來說有點困難,如果有一天你解決了問題,請告訴我。謝謝 – jayzc

相關問題