क्यों निम्नलिखित कोड है:मुझे "सलाह लागू नहीं की गई" चेतावनी क्यों मिली?
pointcut callsToList() : call(* List.*(..));
before(List l) : callsToList() && target(l) {
System.out.println("cool");
}
निम्न चेतावनी उत्पन्न करता है:
सलाह org.eclipse.ajdt.examples.ListAdvice में परिभाषित किया गया लागू नहीं हुआ है [Xlint: adviceDidNotMatch]
मैं ग्रहण में काम कर रहा हूं। मैंने eclipse aspectj plugin स्थापित किया और निश्चित रूप से मेरी परियोजना एक पहलू परियोजना है।
संपादित करें: इसके अलावा मैं ajdt प्लगइन द्वारा प्रदान की एक काम उदाहरण से शुरू:
pointcut callsToBeginTask() : call(void IProgressMonitor.beginTask(..));
before() : callsToBeginTask() {
System.out.println("cool");
};
मैं तथ्य यह है कि इस उदाहरण बिना किसी चेतावनी के काम करता है सिवाय कोई अंतर नहीं देख सकता ...
शायद यह ग्रहण/ओएसजीआई कक्षा लोडिंग नीति से संबंधित है? प्रदान किए गए पॉइंटकट्स को हुक करने के लिए पहलू कैसे काम करता है? –
क्या आप कोड दिखा सकते हैं जिसे सलाह से बुनाया जाना चाहिए? – Espen
आपके अनुरोध को समझना सुनिश्चित नहीं है। मैं इस सलाह को एक ग्रहण अनुप्रयोग में कई कस्टम प्लगइन चलाने के लिए बुलाया जाना चाहता हूं। इस प्रकार मैं जिस कोड को "विश्लेषण" करना चाहता हूं उसे कई प्लगइन/पैकेज/कक्षाओं में विभाजित किया गया है। –