2015-09-18 19 views
5

Potrebbe sembrare una domanda doppia, ma ho pubblicato il codice di esempio suggerito dalla regola del sonar Conforme a uno. Quando si valuta il codice sotto evidenziato con SonarQube si ottiene calamaro: violazione della regola S1948.SonarQube - I campi di regole in una classe "serializzabile" devono essere transitori o serializzabili

enter image description here

Risultato,

enter image description here

ancora il suo un mistero che il motivo per cui la sua violazione di mostra per il codice compatibile, plz chiarire.

UPDATE

problema temporaneo o serializzabili non risolto anche con sonar.java.binaries

scan sonar è successo, ma getta class loader avvertono:

08:26:44.984 INFO - Java bytecode scan... 08:26:44.992 WARN - Class 'dummyserial/Address' is not accessible through the C lassLoader. 08:26:44.993 WARN - Class 'dummyserial/Person' is not accessible through the Cl assLoader. 08:26:44.993 WARN - Class 'dummyserial/Address' is not accessible through the C lassLoader. 08:26:44.994 WARN - Class 'dummyserial/Person' is not accessible through the Cl assLoader. 08:26:44.994 WARN - Class 'dummyserial/Address' is not accessible through the C lassLoader. 08:26:44.997 WARN - Class 'dummyserial/Person' is not accessible through the Cl assLoader. 08:26:44.998 INFO - Java bytecode scan done: 14 ms

+0

E come si presenta la classe Indirizzo? – fge

+0

Come hai definito la classe Indirizzo? e hai fornito il bytecode all'analisi? (la tua analisi è eseguita con maven o sonar runner? e se quest'ultima ti ha fornito il file .class usando 'sonar.java.binaries'?) – benzonico

+0

@benzonico, ho sia Person che Indirizzo come un file java separato, scansionato attraverso il sonar runner con sonar.sources = src. – Jeevanantham

risposta

5

Come precedentemente risposto, si dovrebbe riempire la proprietà sonar.java.binaries per consentire l'analisi bytecode e la risoluzione dei simboli. Avendo questa proprietà riempita, l'analisi non solleverebbe alcun problema su quel caso.

Ora, è davvero noioso che solleviamo un problema quando non siamo in grado di risolvere il tipo di simbolo di un campo. Ho creato il seguente ticket per gestire il problema: SONARJAVA-1266

+0

proverò con il tuo suggerimento per ora e aggiornerò il mio stato, spero che il team di Sonar risolverà questa versione in arrivo, grazie/ – Jeevanantham

+0

ha provato con 'sonar.java.binaries' ma ancora senza fortuna, aggiornare i dettagli in questione sotto l'intestazione di aggiornamento – Jeevanantham

Problemi correlati