google / google/guice

Stack overflow and no meadningful message in incorrect configuration

Open
#691 0 comments 0 reactions 0 assignees View on GitHub
imported
Dominant language
Java
Stars
12.7k
Forks
1.7k
Avg merge
11m
Merged PRs (30d)
2

Description

_From [stepan.koltsov](https://code.google.com/u/113939464116033188989/) on March 09, 2012 15:17:16_
#

public static class Private {
    private Private() {
    }
}

public static class A {
    private Private priv;
    private B b;
    private C c;

    `@`Inject
    public void setPriv(Private priv) {
        this.priv = priv;
    }

    `@`Inject
    public void setB(B b) {
        this.b = b;
    }

    `@`Inject
    public void setC(C c) {
        this.c = c;
    }
}

public static class B {
    private A a;
    private C c;

    `@`Inject
    public void setA(A a) {
        this.a = a;
    }

    `@`Inject
    public void setC(C c) {
        this.c = c;
    }
}

public static class C {
    private A a;
    private B b;

    `@`Inject
    public void setA(A a) {
        this.a = a;
    }

    `@`Inject
    public void setB(B b) {
        this.b = b;
    }
}

public static void main(String[] args) {
    Guice.createInjector(new AbstractModule() {
        protected void configure() { }
    }).getInstance(B.class);
# }
#

l.get(CustomConcurrentHashMap.java:2041)
        at com.google.inject.internal.FailableCache.get(FailableCache.java:50)
        at com.google.inject.internal.MembersInjectorStore.get(MembersInjectorStore.java:65)
        at com.google.inject.internal.ConstructorInjectorStore.createConstructor(ConstructorInjectorStore.java:73)
        at com.google.inject.internal.ConstructorInjectorStore.access$000(ConstructorInjectorStore.java:28)
        at com.google.inject.internal.ConstructorInjectorStore$1.create(ConstructorInjectorStore.java:36)
        at com.google.inject.internal.ConstructorInjectorStore$1.create(ConstructorInjectorStore.java:32)
        at com.google.inject.internal.FailableCache$1.apply(FailableCache.java:39)
        at com.google.inject.internal.util.$MapMaker$StrategyImpl.compute(MapMaker.java:549)
        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.FailableCache.get(FailableCache.java:50)
        at com.google.inject.internal.ConstructorInjectorStore.get(ConstructorInjectorStore.java:49)
        at com.google.inject.internal.ConstructorBindingImpl.initialize(ConstructorBindingImpl.java:125)
        at com.google.inject.internal.InjectorImpl.initializeJitBinding(InjectorImpl.java:521)
        at com.google.inject.internal.InjectorImpl.createJustInTimeBinding(InjectorImpl.java:847)
        at com.google.inject.internal.InjectorImpl.createJustInTimeBindingRecursive(InjectorImpl.java:772)
        at com.google.inject.internal.InjectorImpl.getJustInTimeBinding(InjectorImpl.java:256)
        at com.google.inject.internal.InjectorImpl.getBindingOrThrow(InjectorImpl.java:205)
        at com.google.inject.internal.InjectorImpl.getInternalFactory(InjectorImpl.java:853)
        at com.google.inject.internal.InjectorImpl.createParameterInjector(InjectorImpl.java:925)
        at com.google.inject.internal.InjectorImpl.getParametersInjectors(InjectorImpl.java:913)
# ... and millions more.

_Original issue: http://code.google.com/p/google-guice/issues/detail?id=691_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.