我下载了最新的 google caliper 源代码并使用 maven 构建它。现在我正在尝试运行此处给出的 google caliper 示例测试。. 我正在使用以下命令来执行测试。
java -cp /home/rakesh/programming/refcode/caliper/caliper/target/caliper-1.0-SNAPSHOT.jar com.google.caliper.Runner examples.StringBuilderBenchmark
但我收到以下错误。
Exception in thread "main" java.lang.NoClassDefFoundError: com/google/common/base/Splitter
at com.google.caliper.Runner.<clinit>(Runner.java:67)
Caused by: java.lang.ClassNotFoundException: com.google.common.base.Splitter
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
我试图查看 caliper jar 文件,但找不到 com.google.common.base.Splitter 类文件。即使我无法获得 Splitter.java 文件。有人可以建议我在这里缺少什么吗?
EDIT1:
我发现 com.google.common.base.Splitter 类存在于 appengine-tools-sdk-1.2.1.jar jar 文件中我在命令中包含了 jar 文件,如下所示。
java -cp /home/rakesh/programming/refcode/caliper/caliper/target/caliper-1.0-SNAPSHOT.jar:/home/rakesh/programming/refcode/caliper/examples/appengine-tools-sdk-1.2.1.jar com.google.caliper.Runner examples.StringBuilderBenchmark
但是错误是相同的,它看起来不像命令正在查看具有 Splitter 类的另一个 jar 文件。