2013-08-17 6 views
7

ग्रहण के लिए अपनी खुद की संकलन त्रुटियों को परिभाषित करने का कोई तरीका है? अगर कुछ वस्तुओं को तत्काल नहीं किया जाता है तो मैं संकलन त्रुटियों को फेंकना चाहता हूं।क्या ग्रहण में अपनी त्रुटियों को परिभाषित करना संभव है?

आप देने के लिए वास्तव में क्या मैं क्या करना चाहते हैं:

मैं एक Assets वर्ग (आदि छवियों, लगता है,) सभी संसाधनों के लिए अशक्त चर और एक LoadingScreen वर्ग है कि इन संसाधन वस्तुओं की सभी initializes रखती है। यदि मैं Assets कक्षा में संसाधन जोड़ता हूं लेकिन LoadingScreen कक्षा में नहीं, तो यह पूरे एप्लिकेशन को गड़बड़ कर देगा। मैं ग्रहण में एक त्रुटि देखना चाहता हूं यदि Assets कक्षा में चर LoadingScreen में भी प्रारंभ नहीं किए गए हैं।

क्या यह संभव है?

+3

आप यह कर सकते हैं। ऐसा करने के लिए आपको एक ग्रहण प्लगइन लिखना होगा। मैं ग्रहण विकास से परिचित नहीं हूं, लेकिन आपको शायद एक निर्माता लिखने की आवश्यकता होगी और साथ ही साथ एक नया पहलू भी बनाने की आवश्यकता हो सकती है। एक सभ्य आकार की परियोजना के लिए, किसी भी मामले में मेवेन का उपयोग करना और इसे मोोजो के रूप में कार्यान्वित करना बेहतर हो सकता है। – chrylis

+0

ठीक है, अगर आप ऑब्जेक्ट को तुरंत चालू करना भूल जाते हैं, तो एक्लिप्स एक चेतावनी जारी करता है, लेकिन रनटाइम पर एक त्रुटि होती है। हालांकि, आप इसे एक त्रुटि के रूप में कॉन्फ़िगर कर सकते हैं। [यहां] देखें (http://help.eclipse.org/juno/index.jsp?topic=%2Forg.eclipse.jdt.doc.user%2Freference%2Fpreferences%2Fjava%2Fcompiler%2Fref-preferences-errors- चेतावनी। एचटीएम) ग्रहण वरीयताओं को खोलने के लिए, और एक त्रुटि होने के लिए "शून्य सूचक पहुंच" को कॉन्फ़िगर करें। – gparyani

+1

मैं इस कार्य के लिए ग्रहण का उपयोग नहीं करता, लेकिन स्रोत कोड विश्लेषक [पीएमडी] (http://pmd.sourceforge.net/) या [चेकस्टाइल] (http://checkstyle.sourceforge.net/) के रूप में उपयोग करने का प्रयास करता हूं। । – LaurentG

उत्तर

1

मैं लॉरेनेंट से सहमत हूं, मुझे लगता है कि आपको जावा स्तर पर इस समस्या को हल करना चाहिए। उदाहरण के लिए, आपके पास एक विधि हो सकती है जो अंत में कुछ अंतिम चेक करता है जहां आप जांच करेंगे कि आपके किसी भी संसाधन के पास शून्य सूचक है और यदि आप किसी का पता लगाते हैं तो कस्टम अपवाद फेंक दें।

if (resourceObject==null) { 
throw new CustomException("Null pointer for resource object detected"); 
} 

public class CustomException extends Exception { 
    public CustomException (String errorMsg) { 
    super(errorMsg); 
    } 
} 

हालांकि, वास्तव में सटीक और सटीक उत्तर देने के लिए बहुत से अज्ञात हैं। कुछ कोड निश्चित रूप से मदद करेंगे।

1

मुझे लगता है कि आप एक नई प्लगइन बना सकते हैं या जेडीटी संशोधित कर सकते हैं। एक्लिप्स बैच कंपाइलर का उपयोग करते समय संकलन करते समय त्रुटियों का पता लगाया जाता है। आपको this, और this पर एक नज़र डालना चाहिए।

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

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