我有一个包含大量依赖关系的大项目打包为'jar-with-dependencies.jar'。我把这个jar放在jmeter的/ lib文件夹中。
当我尝试启动Jmeter并打开jmx文件时,我得到未捕获的异常错误,如
Uncaught Exception java.lang.NoSuchMethodError: com.thoughtworks.xstream.core.JV
M.newReflectionProvider()Lcom/thoughtworks/xstream/converters/reflection/Reflect
ionProvider;.See log file for details.
我计划编写一个BeanShell Java代码,该代码将使用导入的自定义jar中的功能。我是否以正确的方式进口罐子?有没有其他方法可以导入jar?
答案 0 :(得分:2)
此类包含在xstream.jar中,JMeter已有自己的xstream.jar版本(JMeter 2.13和3.0包含xstream-1.4.8.jar)。
现在,如果您的带依赖关系的Jar有另一个版本的xstream.jar,那么您将在lib
文件夹中拥有该文件的2个版本。 And that's not good:
行为未确定,仅在运行时将选择两个类中的一个。选择哪一个取决于类加载器的内部实现,没有办法预先知道。
所以你需要删除其中一个文件。哪一个很棘手