Jmeter MarshalException: ошибки, приводящие аргументы
Я настроил jmeter для запуска теста, распространяемого с помощью виртуальных машин Windows Azure. Все машины используют окна.
Тест успешно прошел в режиме графического интерфейса, и я могу получить результат, сохраненный на главном сервере. Однако, когда я пытаюсь запустить тест из консоли jmeter -n -t plan.jmx -r, консоль говорит:
Ошибка в методе rconfigure() java.rmi.MarshalException: ошибка при сортировке аргументов; Вложенное исключение: java.io.NotSerializableException: org.apache.jmeter.JMeter$ListenToTest
Я настроил все виртуальные машины (сервер и клиенты) как:
Java version "1.8.0_65"
Java(TM) SE Runtime Environment (build 1.8.0_65-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.65-b01, mixed mode)
Jmeter version 2.13
Jmeter Plugins 1.31
Есть идеи, в чем может быть проблема? Спасибо
РЕДАКТИРОВАТЬ
Я понижаю версию Java до 1.7, и теперь ошибка говорит
Ошибка в методе rconfigure() java.rmi.MarshalException: ошибка при сортировке аргументов; Вложенное исключение: java.io.NotSerializableException: org.apache.jmeter.threads.RemoteThreadsListenerTestElement
Могут ли Jmeter Plugins стать причиной проблемы?
РЕДАКТИРОВАТЬ - ИСПРАВЛЕНО
Я изменил версию плагина с 1.31 на 1.21 и теперь работает!!!.
Однако я думаю, и я просто догадываюсь здесь, ошибка происходит, когда я запускаю тест из графического интерфейса пользователя, а затем на консоли. Возможно, GUI оставляет сокет открытым или что-то в этом роде, не уверен.
В любом случае эта комбинация работает
Java version "1.7.0_79"
Java(TM) SE Runtime Environment (build 1.7.0_79-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)
Jmeter version 2.13
Jmeter Plugins 1.21 (only Standard Version)
2 ответа
Проверьте журналы в файле jmeter.log (внутри папки bin), и если у вас есть где-то ошибка, подобная этой:
2018-09-17 14:41:32,097 ERROR o.a.j.e.ConvertListeners: Error replacing class org.apache.jmeter.threads.RemoteThreadsListenerTestElement by wrapper: class org.apache.jmeter.threads.RemoteThreadsListenerWrapper java.rmi.RemoteException: Cannot start. yout-pc-name is a loopback address.
Затем запустите Jmeter, дав:
./jmeter -Djava.rmi.server.hostname=your_ip_address
Я боролся с:
NotSerializableException: org.apache.jmeter.threads.RemoteThreadsListenerTestElement
Проблема в моем случае была:
Caused by: java.net.BindException: Address already in use (Bind failed)
Эта информация об ошибке не появилась в стандартном выводе, просто файл журнала.