2016-04-02 37 views
2

Guice 3.0が間違った設定コンポーネント(@Injectは欠落しているなど)に対してフォーマットされたメッセージの代わりにこの例外をスローする理由は?Guice 3.0 - 起動時にArrayIndexOutOfBoundsExceptionが発生しましたか?

Exception in thread "main" com.google.inject.internal.util.$ComputationException: java.lang.ArrayIndexOutOfBoundsException: 16640 
    at com.google.inject.internal.util.$MapMaker$StrategyImpl.compute(MapMaker.java:553) 
    at com.google.inject.internal.util.$MapMaker$StrategyImpl.compute(MapMaker.java:419) 
    at com.google.inject.internal.util.$CustomConcurrentHashMap$ComputingImpl.get(CustomConcurrentHashMap.java:2041) 
    at com.google.inject.internal.util.$StackTraceElements.forMember(StackTraceElements.java:53) 
    at com.google.inject.internal.Errors.formatInjectionPoint(Errors.java:716) 
    at com.google.inject.internal.Errors.formatSource(Errors.java:678) 
    at com.google.inject.internal.Errors.format(Errors.java:555) 
    at com.google.inject.ConfigurationException.getMessage(ConfigurationException.java:70) 
    at java.lang.Throwable.getLocalizedMessage(Throwable.java:391) 
    at java.lang.Throwable.toString(Throwable.java:480) 
    at java.lang.String.valueOf(String.java:2982) 
    at java.io.PrintStream.println(PrintStream.java:821) 
    at java.lang.Throwable$WrappedPrintStream.println(Throwable.java:748) 
    at java.lang.Throwable.printStackTrace(Throwable.java:655) 
    at java.lang.Throwable.printStackTrace(Throwable.java:643) 
    at java.lang.Throwable.printStackTrace(Throwable.java:634) 
    at hu.daniel.hari.exercises.cleanarchitecture.payrollcasestudy.adapters.primary.ui.impl.swing._2.SwingUIMain2.<init>(SwingUIMain2.java:40) 
    at hu.daniel.hari.exercises.cleanarchitecture.payrollcasestudy.adapters.primary.ui.impl.swing._2.SwingUIMain2.main(SwingUIMain2.java:17) 
Caused by: java.lang.ArrayIndexOutOfBoundsException: 16640 
    at com.google.inject.internal.asm.$ClassReader.readClass(Unknown Source) 
    at com.google.inject.internal.asm.$ClassReader.accept(Unknown Source) 
    at com.google.inject.internal.asm.$ClassReader.accept(Unknown Source) 
    at com.google.inject.internal.util.$LineNumbers.<init>(LineNumbers.java:62) 
    at com.google.inject.internal.util.$StackTraceElements$1.apply(StackTraceElements.java:36) 
    at com.google.inject.internal.util.$StackTraceElements$1.apply(StackTraceElements.java:33) 
    at com.google.inject.internal.util.$MapMaker$StrategyImpl.compute(MapMaker.java:549) 
    ... 17 more 

マイinitatingコードは次のとおりです。

Injector injector = Guice.createInjector(new SwingUIModule(useCaseFactory)); 
injector.getInstance(MainFrameUI.class).show(); 
+0

ソリューションを見つけましたか?問題についての手がかりは? – angelcervera

答えて

2

私は問題は以下のGuice 3とは、ラムダ式を処理する方法であると思います。上記のhereのようにこれを修正するにはGuice 4にアップグレードする必要があります。