Sto usando SonarQube per il controllo della qualità del codice e improvvisamente le build che altrimenti passerebbero non possono essere analizzate e falliscono.JaCoCo SonarQube versione incompatibile 1007
[INFO] [00: 00: 03,630] Analisi /mySuperProject/target/jacoco.exec -> java.io.IOException: Incompatibile versione 1007
Quando invoco Maven costruire con il debug interruttore, questa causa si rivela
Caused by: java.io.IOException: Incompatible version 1007.
at org.jacoco.core.data.ExecutionDataReader.readHeader(ExecutionDataReader.java:127)
at org.jacoco.core.data.ExecutionDataReader.readBlock(ExecutionDataReader.java:107)
at org.jacoco.core.data.ExecutionDataReader.read(ExecutionDataReader.java:87)
at org.sonar.plugins.jacoco.AbstractAnalyzer.readExecutionData(AbstractAnalyzer.java:134)
at org.sonar.plugins.jacoco.AbstractAnalyzer.analyse(AbstractAnalyzer.java:107)
Durante l'ispezione jacoco ExecutionDataReader, ho scoperto che viene generata un'eccezione da
if (version != ExecutionDataWriter.FORMAT_VERSION) {
throw new IOException(format("Incompatible version %x.",Integer.valueOf(version)));
}
e da ExecutionDataWriter ho scoperto
/** File format version, will be incremented for each incompatible change. */
public static final char FORMAT_VERSION = 0x1007;
Cos'è questo incompatibili cambiamento e perché è successo? Qualche idea su come risolvere questa sfida?
questione è stata sollevata sul lato SonarQube Java Plugin: http://jira.codehaus.org/browse/SONARJAVA-1091 e dovrebbe essere fissato nella prossima release. Questo è un cambio di rottura sul lato JaCoCo. Facciamo un po 'di tempo per essere in grado di risolverlo. – benzonico