使用plugin编写并运行Kotlin基准测试。据我所知,jmh
专注于编写基准测试,然后构建jar应用程序,并启动应用程序本身。我想知道是否可以使用jmh
的强大功能来类比单元测试,就像项目中作为构建任务运行的部分一样。
我在Kotlin项目中使用gradle
。我希望用gradle lib:runBenchmark
这样的命令调用基准测试。me.champeau.jmh
插件对我来说似乎是多余的,因为有传说(for example)说,只需创建JavaExec
类型的gradle任务并运行org.openjdk.jmh.Main
类,向其传递某些参数就足够了。
到目前为止,我已经设法以类似的方式运行了用java编写的基准测试,但jmh
顽固地拒绝开始看到用Kotlin编写的带注解的类。
1条答案
按热度按时间quhf5bfb1#
org.openjdk.jmh有一个工具jmh-generator-bytecode。使用它,你可以在
gradle
中创建一个任务,从集合中生成必要的代码(kotlin
或java
都不重要):然后你可以编译前面生成的代码:
最后,使用一个任务运行基准测试,在该任务中,您可以将路径传递到编译的新类:
Here你可以看到一个例子,我如何使用这个方法在我的项目。