2015-10-08 10 views
14

मैं जावा एनोटेशन प्रोसेसिंग के साथ खेल रहा था। इंटेलिजे आईडीईए में एप्लिकेशन बिल्ड विफल रहता है, जबकि एक मेवेन बिल्ड सफलतापूर्वक समाप्त होता है। मुझे यकीन है कि प्रदाता वर्ग मौजूद है कर रहा हूँ, फिर भी मैं निम्नलिखित त्रुटि मिलती है:जावा 1.8 में एनोटेशन के लिए संकलन त्रुटि और इंटेलिजे आईडीईए 14

java: Bad service configuration file, or exception thrown while constructing Processor object: javax.annotation.processing.Processor: Provider <my class> not found. 

मुझे लगता है कि एक मॉड्यूल X, कि -proc:none तर्क के साथ संकलित किया जाना चाहिए के कारण है। लेकिन मुझे शेष आवेदन के लिए एनोटेशन प्रोसेसिंग सक्षम करने की आवश्यकता है। एनोटेशन प्रोसेसिंग के दौरान एक विशिष्ट मॉड्यूल को छोड़ने के लिए इंटेलिजे आईडीईए बिल्ड प्रोसेस को कॉन्फ़िगर कैसे करें?

उत्तर

14

आपको अपने मॉड्यूल के लिए एक अलग एनोटेशन प्रोफ़ाइल कॉन्फ़िगर करने की आवश्यकता है।

  1. एक एनोटेशन प्रोफ़ाइल
    1. Annotation Processors पेज बनाएँ, add क्लिक करें।
    2. 'नई प्रोफ़ाइल बनाएं' संवाद बॉक्स में, profile नाम निर्दिष्ट करें।
  2. एसोसिएट एक एनोटेशन प्रोफ़ाइल
    1. के साथ एक मॉड्यूल एक default प्रोफ़ाइल के तहत मॉड्यूल की सूची में अपने मॉड्यूल का चयन करें। (डिफ़ॉल्ट रूप से, प्रोजेक्ट के सभी मॉड्यूल default प्रोफाइल से जुड़े होते हैं।)
    2. Move to पर क्लिक करें, या F6 दबाएं।
    3. ड्रॉप-डाउन सूची से, चयनित मॉड्यूल को स्थानांतरित करने के लिए लक्षित प्रोफ़ाइल का चयन करें। एक प्रोफ़ाइल
      1. के लिए Annotation profile - move
    4. कॉन्फ़िगर एनोटेशन प्रसंस्करण default प्रोफ़ाइल के लिए एनोटेशन प्रसंस्करण सक्षम करें।
    5. प्रोफ़ाइल के लिए एनोटेशन प्रोसेसिंग अक्षम करें, आपने अभी बनाया है।

इस उत्तर IntelliJ IDEA Help से एक लेख पर आधारित है।

+0

@ maytham-ɯɐɥʇʎɐɯ आईडीके। स्क्रीनशॉट इंटेलिजे आईडीईए सहायता से कॉपी किया गया है। – naXa

+2

आप क्यों करते हैं) अपने स्वयं के प्रश्न का उत्तर दें, बी) इसे उसी मिनट के उत्तर दें जिसे आपने पोस्ट किया था और सी) एक साल बाद इसे अधिक बक्षीस दिया? मैं हैरान हूँ। – kriegaex

+2

@kriegaex वैसे ही मैं हूं। अस्पष्ट ... Quack! – naXa

संबंधित मुद्दे