2015-05-22 6 views
7

के अंदर एक बयान के लिए नेटबीन्स घोषणात्मक संकेत वाक्यविन्यास मैं को एक विशिष्ट कथन को एक कोशिश-के-ressources रूप में निरीक्षण और बदलने के लिए चाहता हूं। लेकिन मुझे लगता है कि declarative hints format के सिंटैक्स ने मुझे इसके लिए प्रेरित किया है।कोशिश-ब्लॉक

मैंने कोशिश की:

<!description="Stmt into try-with-resources"> 
try { 
    $before$; 
    someMethod($arg1, $arg2, $arg3); 
    $after$; 
} catch $catches$ 
=> 
try (Resource res = acquire($arg1, $arg2, $arg3))  { 
    $before$; 
    res.use(); 
    $after$; 
} catch $catches$ 

लेकिन मेरे कोड पैटर्न कभी नहीं से मेल खाता है पर लागू होता है। यहां कुछ उदाहरण कोड अनुभाग है जो मुझे मिलान करने की उम्मीद है:

public boolean step(String input) { 
    String id = getId(ID); 
    try { 
    SomethingBefore(); 
    someMethod(10, "label", name); 
    return true; 
    } catch (Exception ex) { 
    log.error("problem", ex); 
    return true; 
    } 
} 

कोई विचार यह क्यों मेल नहीं खाता है? Esp। क्योंकि मुझे लगता है कि दस्तावेज़ से उदाहरण मेरा मेल खाता है, finally के अलावा:

try { 
    $statements$; 
} catch $catches$ 
    finally { 
    $finally$; 
} 

अद्यतन: ऐसा लगता है कि Jackpot -Rules शायद इसलिए है क्योंकि यह एक ही कोड आधार का उपयोग करता है, उसी सिंटैक्स का उपयोग करें।

उत्तर

1

यह रिफैक्टरिंग बहुत बोझिल और खराब दस्तावेज है। आप इस उदाहरण

<!description="Stmt into try-with-resources"> 
try { 
    $before$; 
    $name($arg1, $arg2, $arg3); 
    $after$; 
} catch $catches$ 
=> 
try (Resource res = acquire($arg1, $arg2, $arg3))  { 
    $before$; 
    res.use(); 
    $after$; 
} catch $catches$ 

के अनुसार अपने पैटर्न बदल लेकिन, मैं आपको अन्य तरीकों 3 तर्क बुला के साथ-साथ हो, तो यह कैसे संभाल करने के लिए पता नहीं है चाहिए।

0

कोड रिटर्न में मेरे अनुसार उपयोग किया जा रहा है जो मुझे नहीं लगता कि $ $ के बाद $ के स्थान पर उपयोग किया जा सकता है। इसलिए यदि आप इसे हटाते हैं तो आपके कोड से मेल खा सकता है।

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

  • कोई संबंधित समस्या नहीं^_^