GalenMain : Unsupported major.minor version 51.0

59 views
Skip to first unread message

Elena Florko

unread,
Jun 16, 2016, 8:01:05 AM6/16/16
to Galen Framework
Hi guys,

I am trying to run Galen layout tests from Jenkins. And it fails with following exception:
+ galen test tests/dashboard.test.js --htmlreport ../../../../../galen_report/ --testngreport ../../../../../galen_report/testng/results.xml -Dgalen.log.level=1
Exception in thread "main" java.lang.UnsupportedClassVersionError: com/galenframework/GalenMain : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
at java.net.URLClassLoader.access$000(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:212)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: com.galenframework.GalenMain. Program will exit.

I have googled it before writing here and the only solution I found is update Java. But Java version (Jenkins host) looks OK:

java version "1.7.0_55"
OpenJDK Runtime Environment (IcedTea 2.4.8) (suse-8.36.1-x86_64)
OpenJDK 64-Bit Server VM (build 24.55-b03, mixed mode)

I even tried to downgrade Galenframework to version 2.0:

Galen Framework

Version: 2.0.10

JavaScript executor: Rhino 1.7 release 5 2015 01 29


The same result.

Any suggestions?

Thanks in advance!

Martin Reinhardt

unread,
Jun 16, 2016, 8:02:30 AM6/16/16
to Galen Framework
Galen Version 2 uses Java7+. So you need to have an Java 7 or greater runtime installed

Elena Florko

unread,
Jun 16, 2016, 8:20:08 AM6/16/16
to Galen Framework
It is Java 7, isn't it?

Martin Reinhardt

unread,
Jun 16, 2016, 8:40:00 AM6/16/16
to Galen Framework
sure, but it seems to not use the Java7 VM for your jenkins java. Are using maven or how did you run the Galen tests?

Elena Florko

unread,
Jun 16, 2016, 8:45:21 AM6/16/16
to Galen Framework
I am simply execute shell script in Jenkins with command: galen test tests/dashboard.test.js

Martin Reinhardt

unread,
Jun 16, 2016, 8:46:28 AM6/16/16
to Galen Framework
then just add a line before:

java -version

and post the output here

Elena Florko

unread,
Jun 16, 2016, 8:50:00 AM6/16/16
to Galen Framework
Thanks! You were right! Jenkins internally uses older version of Java than Java installed by default on that server:
java version "1.6.0_27"
OpenJDK Runtime Environment (IcedTea6 1.12.5) (suse-36.2-x86_64)
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)

Can I specify Jenkins which version of Java to use while executing shell script?

Elena Florko

unread,
Jun 16, 2016, 9:06:20 AM6/16/16
to Galen Framework
And it is very strange that in Jenkins Environment Variables:
JAVA_ROOT/usr/lib64/jvm/java
And 

echo $JAVA_ROOT

/usr/lib64/jvm/java


So, they are the same! I am very confused now.

Elena Florko

unread,
Jun 16, 2016, 9:55:52 AM6/16/16
to Galen Framework
I have found it, use Java 6 was set in Jenkins System Properties.

So, for struggling ones the correct answer is check your Java version everywhere!
Reply all
Reply to author
Forward
0 new messages