如何在jmeter中使用java类?

如何在jmeter中使用java类?,java,jmeter,Java,Jmeter,我已经尝试在jmeter中运行java类。 我已将java代码放入BSF预处理器。 但发生了以下错误: ERROR - org.apache.bsf.BSFManager: Exception : java.lang.ClassNotFoundException: org.apache.bsf.engines.java.JavaEngine at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.secu

我已经尝试在jmeter中运行java类。
我已将java代码放入BSF预处理器。
但发生了以下错误:

ERROR - org.apache.bsf.BSFManager: Exception : java.lang.ClassNotFoundException: org.apache.bsf.engines.java.JavaEngine
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190
我已经尝试过包含jar文件。 但是我不知道我需要包括哪个jar文件


有人能告诉我在jmeter中运行java类需要包含哪个jar文件吗?

最好使用Beanshell而不是java

BSF中似乎存在包装问题,请参阅

同时,您可以使用所有BSF引擎获得二进制分布 对于BSF 2.4(以及BSF 2.4的稍微高级版本),从 . 解压该zip归档文件后,您将发现一个名为 “bsf-v244-20080704.jar”。只需将官方BSF2.4替换为 版本(包含所有官方引擎以及“BSF_日志”和 “BSF_LogFactory”)

提到的罐子也有一些问题


无论如何,为了提高性能和更新代码,最好使用JSR223 Sampler+Groovy+fill-in编译缓存键

您使用的是哪一种jmeter版本?使用java语言的2.9 JSR223预处理器对我来说运行良好。我认为jsr223-*元素正在取代beanchell-*和BSF-*元素,因此您可以尝试一下

java和beanshell顺便说一句,如果你经常执行它,它会被认为是慢的。您可以使用groovy和JSR223预处理器。您可以查看有关在文档中缓存编译代码的信息

Beanshell和groovy基本上是java代码兼容的,因此您可以将java代码与它们一起使用,但不能完全使用。纯java中任何更复杂的东西都可能无法在groovy和/或beanshell中编译

如果您使用纯java,那么如果可以的话,使用采样器而不是预处理器是有意义的。如果技术上很难实现,那么最快的选择似乎是将groovy与jsr223预处理器一起使用,并缓存编译后的代码


希望这有帮助。

您正在使用maven?如果没有,请将一个jar复制到BSF谢谢preis。我没有使用maven。我已将此jar复制到apache jmeter/lib文件夹中。但是运气不好。再次出现相同的错误。您可以向您展示BSFSampler的代码和配置吗?