2013-06-04 7 views
6

Sto usando Jenkins con il plug-in FindBugs installato per l'analisi del codice statico. Inoltre, ogni sviluppatore del team ha il plugin IDEA IntelliJ di FindBugs installato per fare lo stesso.FindBugs mostra solo il primo errore nel metodo (Jenkins, IntelliJ IDEA)

Il problema è che in Jenkins viene segnalato solo il primo verificarsi di un errore in un metodo. In Idea, tutti i problemi sono segnalati come errori singoli. Per esempio:

public String myMethod() { 
    StringBuilder sb = new StringBuilder(); 
    sb.append(String.format("First \n")); 
    sb.append(String.format("Second \n")); 
    sb.append(String.format("Third \n")); 
    sb.append(String.format("Fourth \n")); 
    return sb.toString(); 
} 

in questo metodo, Idea segnala 4 errori di tipo VA_FORMAT_STRING_USES_NEWLINE. Sul server jenkins, c'è in realtà solo un errore, in linea con la stringa First \n.

C'è un modo per configurare Jenkins o Idea per comportarsi in modo uniforme?

Versioni:

  • IntelliJ Idea Enterprise 12.1.3
  • FindBugs-IDEA plug 0.9.97
  • Jenkins 1.513
  • findbugs Jenkins plug 2.0.2
+0

È possibile che l'installazione di jenkins non esegua il build e interrompa l'elaborazione non appena viene rilevato un errore, il che è abbastanza normale. L'idea tuttavia rivaluta continuamente ogni riga di codice attraverso il suo analizzatore statico, il che significa che non si fermerà quando trova un errore. Non penserei che tu voglia cambiare il comportamento di entrambi. –

+0

@EngineerDollery ciao, in realtà mi piacerebbe cambiare il comportamento in modo che entrambi gli strumenti diano esattamente gli stessi risultati. Tuttavia, non so come modificare il comportamento di –

+0

Innanzitutto è necessario accertarsi della posizione del problema. Hai ricontrollato che l'input per il plugin sia corretto, dato che il file xml contiene 4 voci dell'errore? E hai provato a usare il plugin dai repository di jenkins invece della versione idea? – uncletall

risposta

0

L'unica la soluzione che ho trovato finora è quella di utilizzare un plugin diverso, ad es. QAPlug Findbugs. Questo riporta risultati esattamente come fa Jenkins.

Il lato negativo è che è un po 'più goffo del plug-in IDEA di FindBugs.

Problemi correlati