2010-08-25 17 views
15

Uso il plug-in CheckStyle per Eclipse.Come eliminare gli avvisi in CheckStyle?

È fantastico trovare cose che non intendevo il 99% delle volte, ma l'1% delle volte in cui intendevo effettivamente violare deliberatamente una regola, vorrei far sapere a CheckStyle che non è necessario occuparsi di segnalazione di un avviso.

Esempio: la regola di commento Javadoc mancante. La maggior parte delle volte voglio commenti Javadoc sui miei metodi. Tuttavia, un metodo come ad esempio:

public boolean isValid() { 
    return valid; 
} 

può probabilmente ottenere senza uno.

Esiste qualcosa come l'annotazione @SuppressWarnings che può essere utilizzata per contrassegnare una violazione specifica della regola CheckStyle come accettabile? Una sorta di commento appositamente formattato, forse? Non voglio disabilitare la regola, voglio solo ignorare una specifica violazione.

(Mi rendo conto in questo caso che potrei semplicemente scrivere il commento Javadoc, ma in altri casi correggere la violazione delle regole non è così semplice).

+3

Vedere http://stackoverflow.com/questions/1704430/is-there-a---a-porte-checkstyle-to-ignore-particular-warning-in-the-source-cod –

+2

Vedere http://stackoverflow.com/questions/4023185/how-to-disable-a-particular-checkstyle-rule-for-a-particular-line-of-code che secondo me è effettivamente più utile in quanto la risposta accettata è più chiara e completa – chrisbunney

risposta

2

Sembra piuttosto noioso, ma è necessario specificare una configurazione XML per ignorarlo. Probabilmente puoi trovare una GUI per farlo usando il plugin Checkstyle per Eclipse o Netbeans. L'esempio che ho trovato è nella pagina Checkstyle configuration.

<?xml version="1.0"?> 

<!DOCTYPE suppressions PUBLIC 
    "-//Puppy Crawl//DTD Suppressions 1.1//EN" 
    "http://www.puppycrawl.com/dtds/suppressions_1_1.dtd"> 

<suppressions> 
    <suppress checks="JavadocStyleCheck" 
       files="AbstractComplexityCheck.java" 
       lines="82,108-122"/> 
    <suppress checks="MagicNumberCheck" 
       files="JavadocStyleCheck.java" 
       lines="221"/> 
</suppressions> 
+10

Sconsiglio di utilizzare questo metodo, perché le successive modifiche nelle classi a cui si fa riferimento cambierebbero i numeri di riga, causando un incubo di manutenzione. Meglio cambiare le impostazioni per gli avvertimenti che vogliamo catturare o non globalmente, o usare CHECKSTYLE: OFF/CHECKSTYLE: ON commenti. – stivlo

2

Sintesi ha fatto riferimento alla pagina di configurazione di Checkstyle. Sfiorandolo, ho trovato SuppressWithNearbyCommentFilter che sembra promettente, a meno che non abbia frainteso il suo scopo ...

5

PhiLho ha ragione - SuppressWithNearbyCommentFilter o SuppressionCommentFilter può aiutare. Ho configurato SuppressionCommentFilter e aggiungendo i commenti "CHECKSTYLE: OFF" e "CHECKSTYLE: ON" disabiliterà temporaneamente lo stile di controllo.

+0

Puoi aggiungere un esempio di come usare questi commenti? Vanno semplicemente dentro i commenti standard a riga singola, possono lavorare usando commenti multilinea, o cosa dire del mixaggio e della corrispondenza del tipo di commento per i commenti OFF e ON? – chrisbunney

+2

Ah, non importa, ho trovato questa risposta: http://stackoverflow.com/a/4023351/110255 – chrisbunney

Problemi correlati