मैं एक intialization तंत्र कि एनोटेशन आधारित जावा में है लागू करना चाहते हैं। विशेष रूप से, मैं है एक एनोटेशन मैं परिभाषित किया है:मैं क्लासपाथ पर सभी कक्षाओं को कैसे ढूंढ सकता हूं जिनके पास एक विशिष्ट विधि एनोटेशन है?
public interface SomeKindOfBasicInterface {}
मैं @Initialization
एनोटेशन है कि मेरी classpath पर SomeKindOfBasicInterface
वर्ग के हर कार्यान्वयन लगाना चाहते हैं:
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface Initialization {
/**
* If the eager initialization flag is set to <code>true</code> then the
* initialized class will be initialized the first time it is created.
* Otherwise, it will be initialized the first time it is used.
*
* @return <code>true</code> if the initialization method should be called
* eagerly
*/
boolean eager() default false;
}
साथ ही, मैं एक अंतरफलक है एक विधि पर मैं वसंत के MetaDataReader
उपकरण है, जो सबसे अच्छा तरीका अन्य SomeKindOfBasicInterface
कार्यान्वयन को लोड करते हुए मैं यह कर रहा हूँ स्थगित करने की तरह लग रही पर देख रहा हूँ ... लेकिन मैं जैसे मैं वर्णन कर रहा हूँ खोज करने के लिए कैसे यकीन नहीं है। कोई सुझाव?
[रनटाइम पर जावा एनोटेशन स्कैनिंग] के संभावित डुप्लिकेट (http://stackoverflow.com/questions/259140/scanning-java-annotations-at-runtime) –