JMeter: невозможно разрешить класс (org.apache.commons.lang.RandomStringUtils), когда JAR с этим классом в папке lib - PullRequest
0 голосов
/ 08 ноября 2019

Мне нужно запустить JMeter план тестирования на сервере, и я получаю сообщение об ошибке во время выполнения: unable to resolve class org.apache.commons.lang.RandomStringUtils в строке import org.apache.commons.lang.RandomStringUtils;.

Как я понимаю, на сервере JMeter отсутствует какой-либо плагин. После неудачного поиска в Интернете этой проблемы, относящейся конкретно к JMeter, я обнаружил страницу https://commons.apache.org/proper/commons-lang/javadocs/api-3.9/org/apache/commons/lang3/RandomStringUtils.html.

Я скачал пакет commons-lang с сайта apache, он содержит файлы commons-lang*.jar. В папке lib JMeter есть также файлы типа jar, на рабочей станции, где работает план тестирования, я нашел commons-lang3-3.8.1.jar jar в папке bin jmeter. Запуск jar -tf показывает, что класс RandomStringUtils. Я скопировал файл на сервер в его папку lib. Но ошибка не исчезла.

Я прочитал Java jar не может разрешить класс , но я предполагаю, что jmeter ищет в lib файлы jar плагинов, так как там уже много файлов.

В чем еще может быть проблема? Должен ли я зарегистрировать плагин как-нибудь? Из моего опыта достаточно было просто скопировать jar в lib/ext. Версия JMeter такая же: 5.1.1.

1 Ответ

0 голосов
/ 08 ноября 2019

В выводе jar я заметил, что нашел другой класс (также это видно из описания на странице apache): org/apache/commons/lang3/RandomStringUtils.class не org/apache/commons/lang/RandomStringUtils.class.

Следующая команда помогла найти правильный jar на локальной станции: echo;find /usr/local/javaapps/apache-jmeter-5.1.1/lib -name *.jar -exec sh -c "jar -tf {} | grep RandomString && echo && ls {} && echo && echo" \;

«Случилось», что jmeter-plugins-manager-1.3.jar. Почему такое странное (ИМХО) местоположение я не знаю, но копирование его на сервер решило проблему. Если кто-то знает, почему этот файл содержит этот класс, пожалуйста, поделитесь в комментариях.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...