首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JMH AnnotationProcessor NullPointerException

JMH AnnotationProcessor NullPointerException
EN

Stack Overflow用户
提问于 2014-05-14 18:05:51
回答 1查看 965关注 0票数 2

我按照JMH主页中的指定创建了maven原型项目。当我对生成的项目进行maven构建时,我得到了“注释生成器抛出了异常. java.lang.NullPointerException”。我的java文件是

代码语言:javascript
复制
    public class MyBenchMark
     //   extends Benchmark
{
    @GenerateMicroBenchmark
    public void timeMyOperation(int reps) {
        for (int i = 0; i < reps; i++) {
          //  ConcurrentHashMapTest.populateConcurrenctHashMap();
        }
    }

    public static void main(String args[]) throws RunnerException {
        MyBenchMark myBenchMark = new MyBenchMark();
     //   myBenchMark.timeMyOperation(50);


        Options opt = new OptionsBuilder()
                .include(".*" + MyBenchMark.class.getSimpleName() + ".*")
                .forks(1)
                .build();

        new Runner(opt).run();
    }

} 

`。我得到的例外是

代码语言:javascript
复制
    org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.0:compile (default-compile) on project perftest: Compilation failure
error: Annotation generator had thrown the exception. java.lang.NullPointerException

    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:213)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537)
    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)
    at org.codehaus.classworlds.Launcher.main(Launcher.java:47)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)
Caused by: org.apache.maven.plugin.compiler.CompilationFailureException: Compilation failure
error: Annotation generator had thrown the exception. java.lang.NullPointerException

    at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:745)
    at org.apache.maven.plugin.compiler.CompilerMojo.execute(CompilerMojo.java:118)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
    ... 25 more
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-05-15 08:34:21

int reps是JMH旅行的对象。根据GenerateMicroBenchmark Javadoc:“参数应该是零或多个包含状态的类。有关确切的合同,请参阅状态文档。”从参数中删除int reps,应该会很好。顺便说一句,您对基准测试的操作是有问题的,请先阅读JMH样品

在这方面,错误信息应该会更好。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23661946

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档