我正在通过 Spring Boot 应用程序使用 jmh 对一些方法进行基准测试。当我通过 IDE 运行它时,它给了我基准,但是当我用 maven 打包它并通过 CMD 运行它时,它给出了下面的堆栈跟踪。# Run progress: 0.00% complete, ETA 00:11:00# Fork: 1 of 1Error: Could not find or load main class org.openjdk.jmh.runner.ForkedMain<forked VM failed with exit code 1><stdout last='20 lines'></stdout><stderr last='20 lines'>Error: Could not find or load main class org.openjdk.jmh.runner.ForkedMain</stderr>Benchmark had encountered error, and fail on error was requestedException in thread "main" java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48) at org.springframework.boot.loader.Launcher.launch(Launcher.java:87) at org.springframework.boot.loader.Launcher.launch(Launcher.java:50) at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51)Caused by: org.openjdk.jmh.runner.RunnerException: Benchmark caught the exception at org.openjdk.jmh.runner.Runner.runBenchmarks(Runner.java:578) at org.openjdk.jmh.runner.Runner.internalRun(Runner.java:320) at org.openjdk.jmh.runner.Runner.run(Runner.java:209) at com.test.statistics.metrics.DruidBenchmarkApplication.main(DruidBenchmarkApplication.java:56)我已经尝试通过来自一堆论坛的信息明确设置类路径,但这并没有帮助通过 cmd 运行应用程序。任何帮助,将不胜感激。
1 回答
慕神8447489
TA贡献1780条经验 获得超1个赞
ClassNotFoundException
与Gradle + JMH相同,这是最近版本中修复的不兼容错误(jmh-gradle-plugin >= 0.5.0)。尽管这个建议很无聊:尝试升级(或降级)并查看它是否仍然存在。
添加回答
举报
0/150
提交
取消