Solved weird problem with executing JMeter tests on Jenkins slaves

After a collegue of mine updated the Java version to 1.7 on our JMeter Jenkins slave (running on CentOS) all JMeter Projects stopped running.
The error message was:

Uncaught Exception java.lang.UnsatisfiedLinkError: /usr/java/jdk1.7.0_45/jre/lib/amd64/xawt/libmawt.so: libXtst.so.6: cannot open shared object file: No such file or directory.

When executed on console it worked.
I fired up a Vagrant VM and added this as Jenkins slave. JMeter worked on this slave also.
So I thought there must be something wrong with the Java installation.

When I searched for the missing library I found the solution:

[--@--]# locate libXtst.so.6
/usr/java/jdk1.6.0_29/jre/lib/amd64/xawt/libXtst.so.6
/usr/lib/libXtst.so.6
/usr/lib/libXtst.so.6.1.0

[--@--]# ll
/usr/java/jdk1.6.0_29/jre/lib/amd64/xawt/libXtst.so.6
lrwxrwxrwx 1 root root 10 Jul 16 2012
/usr/java/jdk1.6.0_29/jre/lib/amd64/xawt/libXtst.so.6 -> libmawt.so

The solution was to create a symbolic link:

[--@--]# cd /usr/java/jdk1.7.0_45/jre/lib/amd64/xawt/
[--@--]# ln -s libmawt.so libXtst.so.6

One thought on “Solved weird problem with executing JMeter tests on Jenkins slaves

Leave a comment