Primesc LinkageError: versiune rău majoră la offset = 6, în timp ce implementez aplicația pe Emulator S60

Am de fapt în curs de dezvoltare proiect J2ME folosind S60 SDK, proiectul meu îmi dă eroarea,

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.

Practic, când creez un nou proiect din depozitul GIT, implicit vine cu nivelul de conformitate 1.3, așa că l-am schimbat.

Because in two classes I'm using String... & @SuppressWarnings("rawtypes")

Această eroare persistă dacă schimba nivelul de conformitate înapoi la 1.3.

Nu înțeleg de ce se întâmplă. Nu mă pot descurca. Dar singura modalitate am gasit este sa creez un nou proiect.

Te rog ajuta-ma.

4
De fapt sunt nou la asta, nu știu mai multe despre asta. În prezent rulez cu SDK-ul S60 pe Eclipse ME pentru dezvoltare, deci ce-am făcut?
adăugat autor MobileEvangelist, sursa
Această eroare a apărut atunci când am schimbat de fapt Nivelul de conformitate al proiectului pentru cod sunt folosind unele adnotări "@ SuppressWarnings (" rawtypes ")" se arată în sugestii pentru a schimba conformitatea proiectului la 1.5 atunci când am făcut după ce proiectul meu nu este executată în mod corespunzător. uneori, dă-mi codul de eroare Symbian 30472 & după ceva timp eroare de legare. Nu înțeleg de ce se întâmplă.
adăugat autor MobileEvangelist, sursa
nu sunt sigur că înțeleg o singură propoziție în întrebare, dar folosind ceva aproape de JRE1.6 pentru dezvoltarea java-me este o idee rea. Orice dincolo de versiunea 1.3 a versiunii java nu ar trebui să funcționeze. java-me se bazează pe java v1.2 și limba a avut o pauză majoră de compatibilitate la v1.5
adăugat autor michael aubert, sursa

2 răspunsuri

Opriți utilizarea adnotărilor și reveniți la nivelul de conformitate 1.3.

Dezvoltarea java-me nu susține nivelul de conformitate 1.5.

codul java-me nu acceptă adnotări.

3
adăugat
mulțumesc pentru răspuns. Dar cum folosesc StringTokenizer de la 1.5. Deci, cum fac asta fără.
adăugat autor MobileEvangelist, sursa
am descărca 1.3 și instala ans set variabilă de mediu, adăugați, de asemenea, că jre la preferință -> Java -> installJREs. așa că acum că va adăugat pentru a construi calea de proiect nou, dar nu se întâmplă dacă am folosi Comparator clasa-mi cere să adăugați 1.3 jre pentru a construi cale. i adăugați, dar încă arată o eroare care "NoClassDefinationFound pentru java/util/Comparator". Nu înțeleg de ce se întâmplă
adăugat autor MobileEvangelist, sursa
Eu am CLDC-javadoc am citit că este, de asemenea, nu conțin nici una dintre aceste clase și după cum știți că dacă i adăugați borcan extern, acesta oferă marcaj de eroare. Am încercat pentru colecții.jar care includ aceste clase. Am postat o altă întrebare pentru această problemă [Link] (" stackoverflow.com/questions/10946541/&helli
adăugat autor MobileEvangelist, sursa
cum ar trebui să folosesc Comparator în clasa mea, deoarece nu face parte din pachetul CLDC java.util va rog ajuta ..
adăugat autor MobileEvangelist, sursa
StringTokenizer nu este, de asemenea, acceptat în java-me. postați un cod sursă pentru a arăta cum îl utilizați și putem încerca să sugerăm alternative compatibile cu java-me.
adăugat autor michael aubert, sursa
Mergeți la jcp.org/en/jsr/all JSR 139 și JSR 118 vă vor spune ce clase ai permis să folosești pentru dezvoltarea java-me.
adăugat autor michael aubert, sursa

De fapt, am rezolvat această eroare și acum folosesc jdk1.3 pentru proiecte în eclipse. datorită QuickRecipesOnSymbianOS.

I've download and install jdk1.3.3 and supply it in eclipse preferences ->Java -> Installed JREs (path of the folder containing installed jdk). Instead of providing jre folder provide complete jdk folder. It will added to build path of your project.

După instalare, nu uitați să setați variabila de mediu.

1
adăugat