I'm getting LinkageError: bad major version at offset=6, while deploying app on S60 Emulator

java, java-me, linker-errors, midp, s60

Solution

Stop using annotations and go back to Compliance level 1.3.

java-me development does not support Compliance level 1.5.

java-me code does not support annotations.

Problem

I actually developing J2ME project using S60 SDK, my project gives me the error, ``` Uncaught exception! com.ibm.oti.error.LinkageError: (com/yoke/symbian/YokeApp) bad major version at offset=6 at java.lang.Class.forNameImpl(Native Method) at java.lang.Class.forName(Unknown Source) at com.nokia.mj.impl.vmport.VmPort.Class_forName(VmPort.java:71) at com.symbian.j2me.midp.runtimeV2.Application.constructAction(Application.java:490) at com.symbian.j2me.midp.runtimeV2.Application.startRequest(Application.java:435) at com.symbian.j2me.midp.runtimeV2.Application.event(Application.java:304) at com.symbian.j2me.midp.runtimeV2.ApplicationEvent.dispatch(ApplicationEvent.java:90) at com.symbian.j2me.midp.runtimeV2.ApplicationThread.run(ApplicationThread.java:30) -VM verbose connection exited ``` Because I'm changing compliance level of project from 1.3 to 1.6 (I've installed) from ProjectProperties -> Javacompiler. Basically when I'm creating new project from git repository it default comes with compliance level 1.3 so, I changed it. Because in two classes I'm using String... & `@SuppressWarnings("rawtypes")` This error continue if I change back compliance level to 1.3. I don't understand why it's happening. I exactly can't sort out. But the only way I found is to create new project. Please help.

Original source