`

JMH记要

    博客分类:
  • Java
阅读更多

1.What's JMH?——OpenJDK提供的微基准测试工具

官网: http://openjdk.java.net/projects/code-tools/jmh/

maven:  http://central.maven.org/maven2/org/openjdk/jmh/

 

2.使用过程中遇到的问题及解决

简单maven工程:

	<properties>
		<jmh.version>1.9.3</jmh.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>org.openjdk.jmh</groupId>
			<artifactId>jmh-core</artifactId>
			<version>${jmh.version}</version>
		</dependency>

		<dependency>
			<groupId>org.openjdk.jmh</groupId>
			<artifactId>jmh-generator-annprocess</artifactId>
			<version>${jmh.version}</version>
			<scope>provided</scope>
		</dependency>

		<dependency>
			<groupId>org.openjdk.jmh</groupId>
			<artifactId>jmh-samples</artifactId>
			<version>${jmh.version}</version>
		</dependency>
	</dependencies>

 

然后运行jmh-samples jar包中的例子:org.openjdk.jmh.samples.JMHSample_01_HelloWorld

出现异常:

  1. Exception in thread "main" java.lang.RuntimeException: ERROR: Unable to find the resource: /META-INF/BenchmarkList  

解决:安装m2e-apt插件(感谢:https://www.iteye.com/blog/szhnet-2323117

 

2) 接着运行源码目录下的代码,出现异常:

 Exception in thread "main" No benchmarks to run; check the include/exclude regexps.
 at org.openjdk.jmh.runner.Runner.internalRun(Runner.java:256)
 at org.openjdk.jmh.runner.Runner.run(Runner.java:203)

 解决:安装m2e-apt后,需配置:(再次感谢:https://www.iteye.com/blog/szhnet-2323117  ,文章中已经说了,怪自己太不仔细)

 

勾选后再次运行测试程序,发现会在 target 目录下生成 generated-sources 和 generated-test-sources 目录,其中generated-sources 下会生成一些java类,比如CollectionsBenchmarkTest_jmh.java、CollectionsBenchmarkTest_jmh_B1.java、CollectionsBenchmarkTest_jmh_B2.java、CollectionsBenchmarkTest_jmh_B3.java等,这些类中用到了 javax.annotation.Generated 注解,于是添加依赖:

		<dependency>
			<groupId>javax.annotation</groupId>
			<artifactId>javax.annotation-api</artifactId>
			<version>1.3.2</version>
		</dependency>

 

再次运行测试案例,成功!

 

 

 

 

 

分享到:
评论

相关推荐

    jmh-samples-1.17.1-sources.zip

    **JMH(Java Micro Benchmark Harness)** 是一个由Oracle JDK开发团队维护的开源框架,用于在Java平台上进行微基准测试。这个"jmh-samples-1.17.1-sources.zip"压缩包包含了JMH的1.17.1版本的源代码样本,为开发者...

    JMH 气象传真图播发表

    **JMH气象传真图播发表详解** 日本气象厅(Japan Meteorological Agency,简称JMH)是全球重要的气象服务机构之一,其发布的气象传真图对于航海、航空、气象预报以及相关行业至关重要。JMH的气象传真图播发表列出了...

    Android代码-jmh-gradle-plugin

    = JMH Gradle Plugin :jmh-version: 1.21 :plugin-version: 0.4.8 image:http://img.shields.io/travis/melix/jmh-gradle-plugin/master.svg["Build Status (travis)", link=...

    微基准测试工具:jmh

    压缩包中的`jmh-core-1.20.jar`和`jmh-generator-annprocess-1.20.jar`是JMH框架的主要组成部分。`jmh-core`包含了JMH的主运行时库,提供了基准测试的运行环境和核心功能。`jmh-generator-annprocess`则是一个注解...

    jmh.rar_jmh The

    【标题】"jmh.rar_jmh The" 涉及的是一个名为 "jmh" 的信息系统,该系统可能是一个教务管理平台,旨在优化学校成绩管理。从描述中可以看出,这个系统是为教务处设计的,同时也服务于全校师生,以实现学生成绩管理的...

    jmh-core-1.3.3.zip

    【标题】"jmh-core-1.3.3.zip" 提供的是JMH(Java Microbenchmark Harness)的核心库,这是一个由Oracle开发的开源项目,专门用于编写和运行Java微基准测试。JMH是Java开发者用来测量代码性能的有力工具,它提供了...

    jmh-core-1.23.jar

    OnJava8书中示例必须的jmh包。书中示例程序import了此包的类,如果没有此文件,OnJava8书中示例将无法在idea中顺利运行

    idea-jmh-plugin.jar

    IDEA JMH基准测试插件 微基准测试,他是测的某一个方法的性能到底是好或者不好,换了方法的实现之后他的性能到底好还是不好。

    jmh-generator-bytecode-0.7.2.zip

    【标题】"jmh-generator-bytecode-0.7.2.zip" 提供的是Java Microbenchmark Harness(JMH)的一个工具,用于生成字节码级别的性能基准测试。JMH是Java平台上的一个开源框架,它专注于提供准确且可重复的性能测量。这...

    jmh-gradle-plugin:将JMH基准测试框架与Gradle集成

    而`jmh-gradle-plugin`则是这个框架与流行的构建工具Gradle的整合插件,使得在Gradle项目中使用JMH变得简单易行。 **一、JMH简介** JMH的主要目标是消除编写基准测试时常见的陷阱,如不准确的计时、缓存污染和JVM...

    idea-jmh-plugin:Itellij IDEA插件可简化JMH的基准测试

    Java Microbenchmark线束(JMH)的Intellij IDEA插件 这是一个插件,允许您以与JUnit相同的方式使用 。 以下是已实现的功能: @Benchmark方法生成 运行单独的@Benchmark方法 在一堂课中运行所有基准测试 我该如何...

    jmh-perf-tests:各种JMH性能测试

    《JMH性能测试详解:深度探索Hibernate项目的微基准实验》 在Java开发领域,性能测试是确保代码高效运行的关键环节。"jmh-perf-tests"是一个专注于JMH(Java Microbenchmark Harness)性能测试的项目,它针对...

    jmh-visualizer:直观地探索您的JMH基准

    JMH可视化器 直观地查看您的基准! 在线版本位于 ! 带有2个配套项目: 特征 无服务器架构-所有操作均在您的浏览器中本地进行 可视化按基准测试类别分组的(一个JSON文件)的基准测试 带有分数和分数错误的垂直条形...

    jmh_release_V3.0.4_12232159.apk.1(1).1

    jmh_release_V3.0.4_12232159.apk.1(1).1

    JMH简介Java开发Java经验技巧共8页.pdf.zi

    【标题】:“JMH简介Java开发Java经验技巧共8页.pdf.zi” 指向的是一份关于Java开发和优化技术的文档,特别提到了Java Microbenchmark Harness(JMH),这是一项强大的性能测试框架,用于Java、JavaScript、JVM语言...

    jmh-samples:带有我自己的示例的JMH示例+ jar等

    jmh样本注意:自2013年6月15日起,罐子/样品是最新的。 从那以后,JMH已经走了很长一段路,并且玩起来容易得多。 现在,我删除了旧的jar / samples,并改为使用Maven托管依赖项。 JMH样本。 设置该设置是为了支持我...

    使用JMH进行微基准测试不要猜,要测试!Java开发Jav

    Java Micro Benchmark Harness(JMH)就是这样一款强大的工具,它由Oracle JDK开发团队维护,专为Java、JVM以及相关语言提供了一个标准的基准测试框架。本文将深入探讨如何使用JMH进行微基准测试,分享一些相关的...

Global site tag (gtag.js) - Google Analytics