2016-10-14 9 views
0
Options opt = new OptionsBuilder() 
       .include(this.getClass().getSimpleName()) 
       .forks(1) 
       .build(); 

Составление штрафа с JMH-ядра версии 1.9, не удалось с JMH-версии ядра> 1.9Ошибка компиляции с OptionsBuilder для JMH-версии ядра> 1,9

Error:java: java.lang.IllegalStateException: Unable to parse the line: PerformanceBenchmark.benchmark1===,===PerformanceBenchmark_benchmark1.benchmark1===,===Throughput===,===1====,===[]===,===[]===,===[]===,===[]===,===[]===,===[]===,===[]===,===[]===,===[]===,===[]===,===[]===,===[]===,===[]===,===[]===,===[]===,===[]===,===[] 

Java версия: 1.8.0_74

Может ли кто-нибудь сказать мне, что пошло не так.? Спасибо.

 <!--Benchmarking framework--> 
    <dependency> 
     <groupId>org.openjdk.jmh</groupId> 
     <artifactId>jmh-core</artifactId> 
     <version>1.9.3</version> 
     <scope>test</scope> 
    </dependency> 
    <dependency> 
     <groupId>org.openjdk.jmh</groupId> 
     <artifactId>jmh-generator-annprocess</artifactId> 
     <version>1.9.3</version> 
     <scope>test</scope> 
    </dependency> 
+0

Вы пытались 'mvn clean', а затем перестроить? –

+0

Да, я пробовал. Кажется, что 1.12 является последней версией, что jmh-core и jmh-generator-annprocess все еще работают для меня – Xitrum

ответ

1

Есть два типа зависимостей обычно участвующих: jmh-core и jmh-generator-annprocess. Их версии должны совпадать. Если они этого не сделают, генератор может создать контрольный список в формате, который ядро ​​не может понять. Скорее всего, это такой случай.

+0

Я попытался сопоставить их как с версией 1.15 (новейшей для jmh-generator-annprocess). К несчастью, не работает – Xitrum

+0

Предоставьте MCVE, пожалуйста. –

+0

Обновлено с помощью pom по вашему желанию – Xitrum

0

В моем случае jmh-core и jmh-generator-annprocess версии соответствуют, но сборка все еще не удалась. Это произошло после того, как версия JMH была увеличена. Я разрешил это, очистив и восстановив проект в IntelliJ.