“线程中的异常”;“主要”;org.apache.jmeter.engine.StandardJMeterEngine.configure上的java.lang.NullPointerException(StandardJMeterEngine.java:176)

“线程中的异常”;“主要”;org.apache.jmeter.engine.StandardJMeterEngine.configure上的java.lang.NullPointerException(StandardJMeterEngine.java:176),java,nullpointerexception,jmeter,Java,Nullpointerexception,Jmeter,我试图通过java运行Jmeter测试计划,下面是代码 package com.jmeter; import org.apache.jmeter.engine.StandardJMeterEngine; import org.apache.jmeter.save.SaveService; import org.apache.jmeter.util.JMeterUtils; import org.apache.jorphan.collections.HashTree; import java.io

我试图通过java运行Jmeter测试计划,下面是代码

package com.jmeter;
import org.apache.jmeter.engine.StandardJMeterEngine;
import org.apache.jmeter.save.SaveService;
import org.apache.jmeter.util.JMeterUtils;
import org.apache.jorphan.collections.HashTree;
import java.io.FileInputStream;
public class JMeterFromExistingJMX {
    public static void main(String[] argv) throws Exception {
        // JMeter Engine
        StandardJMeterEngine jmeter = new StandardJMeterEngine();
        // Initialize Properties, logging, locale, etc.

        JMeterUtils.loadJMeterProperties("c:\\JMeter\\apache-jmeter-3.0\\bin\\jmeter.properties");
        JMeterUtils.setJMeterHome("c:\\JMeter\\apache-jmeter-3.0");
        JMeterUtils.initLogging();// you can comment this line out to see extra log messages of i.e. DEBUG level
        JMeterUtils.initLocale();
        // Initialize JMeter SaveService
        SaveService.loadProperties();
        // Load existing .jmx Test Plan
        FileInputStream in = new FileInputStream("c:\\JMeter\\apache-jmeter-3.0\\extras\\Test.jmx");
        HashTree testPlanTree = SaveService.loadTree(in);
        in.close();
        // Run JMeter Test
        jmeter.configure(testPlanTree);
        jmeter.run();
    }
}
下面是我在类路径中添加的.jars文件,

在编译上述代码时,我遇到了以下异常

INFO 2017-01-28 20:25:58.549[jmeter.e]():启用运行版本后将启动侦听器 信息2017-01-28 20:25:58.572[jmeter.e]():要恢复到先前的行为,请定义jmeterengine.startlistenerslater=false

Exception in thread "main" java.lang.NullPointerException
    at org.apache.jmeter.engine.StandardJMeterEngine.configure(StandardJMeterEngine.java:176)
    at com.jmeter.JMeterFromExistingJMX.main(JMeterFromExistingJMX.java:32)
  • 升级到(目前为3.1版),JMeter 2.6已有5年以上的历史
  • 文章说,

    要从Java代码执行现有的JMeter测试或通过编程创建一个JMeter测试,必须具备基本的Java知识,并且必须具备以下内容:

  • 在什么地方安装了JMeter
  • 在项目或模块类路径中,从JMeter安装的/lib文件夹,特别是/lib/ext文件夹中获取所需的JMeter jar
  • 因此,您需要删除apachejmeter_core-2.6.jar,并从最新的JMeter版本安装文件夹中添加库


    谢谢你的建议,可能是重复的。但即使在做了上述工作之后,也会出现同样的错误