13

documentation of Maven Compiler plugin mentions the following:डिफ़ॉल्ट एनोटेशन प्रोसेसर खोज प्रक्रिया क्या है?

annotationProcessors: एनोटेशन प्रोसेसर की

नाम चलाने के लिए। केवल जेडीके 1.6+ पर लागू होता है यदि सेट नहीं है, तो डिफ़ॉल्ट एनोटेशन प्रोसेसर डिस्कवरी प्रक्रिया लागू होती है।

डिफ़ॉल्ट एनोटेशन प्रोसेसर खोज प्रक्रिया क्या है? क्या इस कॉन्फ़िगरेशन टैग की तुलना में एनोटेशन प्रोसेसर सेट अप करने का कोई और तरीका है?

मैंने पाया कि Getting Started with the Annotation Processing Tool (apt) प्रलेखन एक डिफ़ॉल्ट खोज प्रक्रिया का उल्लेख है, लेकिन यह कारखाने कक्षाएं नहीं प्रोसेसर और दुर्भाग्य से यह JDK से tools.jar और com.sun संकुल का उपयोग करता है के साथ काम करता है। क्या यह डिफ़ॉल्ट एनोटेशन प्रोसेसर खोज प्रक्रिया है?

उत्तर

15

कंपाइलर को उपलब्ध एनोटेशन प्रोसेसर बनाने का डिफ़ॉल्ट तरीका इसे META-INF/services/javax.annotation.processing.Processor में फ़ाइल में पंजीकृत करना है। फ़ाइल में कई प्रोसेसर हो सकते हैं: अंत में एक नई लाइन के साथ, प्रत्येक अपनी पूरी लाइन पर पूरी तरह योग्यता प्राप्त क्लास नाम। यदि कोई निर्दिष्ट नहीं है तो संकलक इस तरह से पाए गए प्रोसेसर का उपयोग करने के लिए डिफ़ॉल्ट होगा।

+3

विशिष्ट होने के लिए, यह केवल एक [serviceLoader] (http://docs.oracle.com/javase/8/docs/api/java/util/ServiceLoader.html) 'javax.annotation.processing.Processor 'के लिए है – gk5885