Below is my code. I want to inject the "inter" field. Why is the
output null?

import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PARAMETER;
import static java.lang.annotation.RetentionPolicy.RUNTIME;

import java.lang.annotation.Retention;
import java.lang.annotation.Target;

import com.google.inject.AbstractModule;
import com.google.inject.BindingAnnotation;
import com.google.inject.Guice;
import com.google.inject.Inject;
import com.google.inject.Injector;

public class AnnotationDemo2 {

        @Inject @MyAnnotation public Inter inter;

        public static void main(String[] args) {
                Injector injector = Guice.createInjector(new AbstractModule(){
                        @Override
                        protected void configure() {
                                
bind(Inter.class).annotatedWith(MyAnontation.class).to
(Type.class);
                        }
                });
                AnnotationDemo2 demo2 = new AnnotationDemo2();
                System.out.println(demo2.inter);

        }
}

@BindingAnnotation @Target({ FIELD, PARAMETER, METHOD }) @Retention
(RUNTIME)
@interface MyAnnotation{

}

interface Inter{

}

class Type implements Inter{

}
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"google-guice" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/google-guice?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to