Я использую SonarQube для контроля качества кода, и вдруг сборки, которые в противном случае прошли бы, не могут быть проанализированы и не пройдены.JaCoCo SonarQube несовместимая версия 1007
[INFO] [00: 00: 03,630] Анализ /mySuperProject/target/jacoco.exec -> java.io.IOException: Несовместимая версия 1007
Когда я призываю Maven строить с отладкой переключатель, эта причина обнаруживается
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)
осматривая jacoco ExecutionDataReader, я обнаружил, что исключение из
if (version != ExecutionDataWriter.FORMAT_VERSION) {
throw new IOException(format("Incompatible version %x.",Integer.valueOf(version)));
}
и от ExecutionDataWriter я узнал
/** File format version, will be incremented for each incompatible change. */
public static final char FORMAT_VERSION = 0x1007;
Что это несовместимого изменения и почему это происходит? Любые идеи, как решить эту проблему?
был поднят вопрос о SonarQube стороне Java Plugin: http://jira.codehaus.org/browse/SONARJAVA-1091 и должно быть зафиксировано в следующем выпуске. Это нарушение на стороне JaCoCo. Давайте немного потрудиться, чтобы исправить это. – benzonico