2013-09-16 7 views
11

मैं A_CONSTANT से स्ट्रिंग ClassB की टिप्पणियों के हिस्सा बनना चाहते हैं:किसी अन्य वर्ग में उपयोग किए जाने पर ग्रहण @value को क्यों नहीं संभाला जा सकता है?

package my.stuff; 

public class ClassA { 
    /** Shows the string just fine: {@value} */ 
    public static final String A_CONSTANT = "show this in comments"; 
} 

package my.stuff; 

/** 
* Does not give me the string: {@value my.stuff.ClassA#A_CONSTANT} 
* Neither does this: {@value ClassA#A_CONSTANT} 
* 
* @see my.stuff.ClassA#A_CONSTANT 
*/ 
public class ClassB { 

} 

{@value}ClassA में जब लगातार के नाम पर होवर मुझे स्ट्रिंग सामग्री पता चलता है; कोई बात नहीं।

@see टैग ClassB में A_CONSTANT से लिंक करके अपना काम करता है।

फिर भी ClassB में दो {@value ...} प्रयास विफल: मैं शाब्दिक {@value ...} हिस्सा है और नहीं जब ClassB पर मँडरा A_CONSTANT की सामग्री को देख सकते है।

documentation मुझे निम्नलिखित नोटेशन का उपयोग करने के लिए कहता है जो मैंने सोचा था: {@value package.class#field}

this question का जवाब भी ऊपर संकेतन का उपयोग करने के लिए सलाह देते हैं।

This मूल रूप से मेरा रूप में एक ही सवाल है, लेकिन उत्तर नहीं दिया गया।

मैं अन्य वर्ग की टिप्पणियों में निरंतर की स्ट्रिंग सामग्री कैसे दिखा सकते हैं?

मैं ग्रहण जूनो उपयोग कर रहा हूँ विंडोज 7 86 पर।

अग्रिम धन्यवाद।

संपादित करें:

अपने प्रोजेक्ट {@value my.stuff.ClassA#A_CONSTANT} पर javadoc.exe चल सही स्ट्रिंग के लिए हल करता है।

माउसओवर पर निरंतर की स्ट्रिंग प्रदर्शित करते हुए javadoc.exe इसके साथ कोई समस्या नहीं है क्यों ग्रहण नहीं करता है:

यही कारण है कि मैं सवाल थोड़ी बदल गई हैं है?

Mouse over in Eclipse: Constant's string is not shown

+0

मैं इस के लिए एक newb, तो शायद एक गूंगा टिप्पणी कर रहा हूँ। रण 'जावाडोक' और कक्षाबी के लिए सही ढंग से दिखाया गया है 'मुझे स्ट्रिंग नहीं देता है: "इसे टिप्पणियों में दिखाएं" न तो यह करता है: '। तो समस्या आपके ग्रहण और मेरे जेडिट के साथ है। शायद यह निर्दिष्ट करने के लिए कहीं भी है कि जेनरेट किया गया जावाडोक और उदा। स्थिर-मूल्य.html स्थित हैं। – clwhisk

+0

(बस एक्लिप्स लुना (4.4) के साथ प्रयास किया। एक ही परिणाम। मुझे लगता है कि यह एक बग है या एक प्रतिगमन: https://bugs.eclipse.org/bugs/show_bug.cgi?id=172459) –

उत्तर

-1

जावाडोक संदर्भ पृष्ठ है कि आप here से जुड़ा हुआ, पर के तहत "कहाँ टैग प्रयुक्त किया जा सकता" यह बताता है कि @value एक मैदान पर इस्तेमाल किया जा सकता है, लेकिन एक वर्ग पर नहीं। कक्षा बी में, जावाडोक कक्षा पर है, जो अमान्य है। यह संभव है कि ग्रहण उस मूल्यांकन का सख्ती से पालन कर रहा है जबकि javadoc.exe नियुक्ति के साथ अधिक उदार है।

+1

मुझे लगता है कि आप प्रश्न और न ही उदाहरण को समझ में आया, '{@value my.stuff.ClassA # A_CONSTANT}' वर्ग 'कक्षा' के अंदर फ़ील्ड 'A_CONSTANT' को लक्षित करता है, इसलिए इसे काम करना चाहिए, लेकिन ग्रहण इसे स्वीकार नहीं करता है वाक्यविन्यास ... –

3

यह ग्रहण में एक बग प्रतीत होता। the docs से थोड़ा उदाहरण संशोधित करना:

public class TestClass { 
    /** 
    * The value of this constant is {@value}. 
    */ 
    // In Eclipse this shows: The value of this constant is "<script>". 
    public static final String SCRIPT_START = "<script>"; 
    /** 
    * Evaluates the script starting with {@value TestClass#SCRIPT_START}. 
    */ 
    // In Eclipse this shows: Evaluates the script starting with {@value TestClass#SCRIPT_START}. 
    public void test1() { 
    /** 
    * Evaluates the script starting with {@value #SCRIPT_START}. 
    */ 
    // In Eclipse this shows: Evaluates the script starting with "<script>". 
    public void test2() { 
    } 
} 

एक bug इस के लिए ग्रहण के साथ बनाया गया है।

+0

बग रिपोर्ट दर्ज करने के लिए धन्यवाद। –

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

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