Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

UnsupportedClassVersionError: JVMCFRE003 bad major version in WebSphere AS 7

I am getting this error

java.lang.UnsupportedClassVersionError: JVMCFRE003 bad major version; class=map/CareMonths, offset=6

My Eclipse's Java compiler is set to 1.6 and my installed Java SDK in C:\Program Files is 1.6.0, but still I get this error when I install my app to Webshere Application Server V7.

What does offset=6 mean? I want to compile using Java 6 and Websphere 7 supports Java 6.

I do see that the JDK in the IBM directory where server is installed is Java 7. Is that what is causing this? ....but again my workspace's Eclipse compiler is set to Java 1.6.

like image 853
mi3 Avatar asked Feb 17 '13 21:02

mi3


2 Answers

WebSphere Application Server V7 does support Java Platform, Standard Edition (Java SE) 6 (see Specifications and API documentation in the Network Deployment (All operating systems), Version 7.0 Information Center) and it's since the release V8.5 when Java 7 has been supported.

I couldn't find the Java 6 SDK documentation, and could only consult IBM JVM Messages in Java 7 Windows documentation. Alas, I couldn't find the error message in the documentation either.

Since java.lang.UnsupportedClassVersionError is "Thrown when the Java Virtual Machine attempts to read a class file and determines that the major and minor version numbers in the file are not supported.", you ran into an issue of building the application with more recent version of Java than the one supported by the runtime environment, i.e. WebSphere Application Server 7.0.

I may be mistaken, but I think that offset=6 in the message is to let you know what position caused the incompatibility issue to occur. It's irrelevant for you, for me, and for many other people, but some might find it useful, esp. when they generate bytecode themselves.

Run the versionInfo command to find out about the Installed Features of WebSphere Application Server V7, e.g.

C:\IBM\WebSphere\AppServer>.\bin\versionInfo.bat WVER0010I: Copyright (c) IBM Corporation 2002, 2005, 2008; All rights reserved. WVER0012I: VersionInfo reporter version 1.15.1.47, dated 10/18/11  -------------------------------------------------------------------------------- IBM WebSphere Product Installation Status Report --------------------------------------------------------------------------------  Report at date and time February 19, 2013 8:07:20 AM EST  Installation -------------------------------------------------------------------------------- Product Directory        C:\IBM\WebSphere\AppServer Version Directory        C:\IBM\WebSphere\AppServer\properties\version DTD Directory            C:\IBM\WebSphere\AppServer\properties\version\dtd Log Directory            C:\ProgramData\IBM\Installation Manager\logs  Product List -------------------------------------------------------------------------------- BPMPC                    installed ND                       installed WBM                      installed  Installed Product -------------------------------------------------------------------------------- Name                  IBM Business Process Manager Advanced V8.0 Version               8.0.1.0 ID                    BPMPC Build Level           20121102-1733 Build Date            11/2/12 Package               com.ibm.bpm.ADV.V80_8.0.1000.20121102_2136 Architecture          x86-64 (64 bit) Installed Features    Non-production                       Business Process Manager Advanced - Client (always installed) Optional Languages    German                       Russian                       Korean                       Brazilian Portuguese                       Italian                       French                       Hungarian                       Simplified Chinese                       Spanish                       Czech                       Traditional Chinese                       Japanese                       Polish                       Romanian  Installed Product -------------------------------------------------------------------------------- Name                  IBM WebSphere Application Server Network Deployment Version               8.0.0.5 ID                    ND Build Level           cf051243.01 Build Date            10/22/12 Package               com.ibm.websphere.ND.v80_8.0.5.20121022_1902 Architecture          x86-64 (64 bit) Installed Features    IBM 64-bit SDK for Java, Version 6                       EJBDeploy tool for pre-EJB 3.0 modules                       Embeddable EJB container                       Sample applications                       Stand-alone thin clients and resource adapters Optional Languages    German                       Russian                       Korean                       Brazilian Portuguese                       Italian                       French                       Hungarian                       Simplified Chinese                       Spanish                       Czech                       Traditional Chinese                       Japanese                       Polish                       Romanian  Installed Product -------------------------------------------------------------------------------- Name                  IBM Business Monitor Version               8.0.1.0 ID                    WBM Build Level           20121102-1733 Build Date            11/2/12 Package               com.ibm.websphere.MON.V80_8.0.1000.20121102_2222 Architecture          x86-64 (64 bit) Optional Languages    German                       Russian                       Korean                       Brazilian Portuguese                       Italian                       French                       Hungarian                       Simplified Chinese                       Spanish                       Czech                       Traditional Chinese                       Japanese                       Polish                       Romanian  -------------------------------------------------------------------------------- End Installation Status Report -------------------------------------------------------------------------------- 
like image 192
Jacek Laskowski Avatar answered Sep 17 '22 20:09

Jacek Laskowski


In this Eclipse Preferences panel you can change the compiler compatibility from 1.7 to 1.6. This solved the similar message I was getting. For Eclipse, it is under: Preferences -> Java -> Compiler: 'Compiler compliance level'

like image 43
V.. Avatar answered Sep 21 '22 20:09

V..