2011-12-29 5 views
1

현재 Java ME SDK 3.0.5가 설치되어 있으며 Eclipse에서 MIDLET을 실행 중입니다.Eclipse에서 J2ME 에뮬레이터가 열리지 않는 것 같습니다.

나는 콘솔에 다음과 같은 데이터를 얻을 에뮬레이터 장치에서 응용 프로그램 실행하면 :

Syntax: 

emulator [arguments] 

In order to get commands supported by given device run: 
emulator.exe -Xdevice:<device name> -Xquery 

Generic list of arguments is: 

-version   Display version information about the emulator 
-help    Display list of valid arguments 
-classpath, -cp The class path for the VM 
-D<name>=<value> Set a system property 
-Xdebug   Use a remote debugger 
-Xrunjdwp:[transport=<transport>,address=<address>,server=<y/n>, 
     suspend=<y/n>] 
        Debugging options 
-Xdevice:<device> Select a device skin for the emulator 
-Xdomain:<domain_name> 
       Set the MIDlet suite's security domain 
-Xmain:<main class name> 
        Run the main method of a Java class, as in Java SE 
-Xquery   Print device information 

모든 괜찮을 것 같다,하지만 난 에뮬레이션의 어떤 형태를 표시하지 수 있습니다.

여기에 문제가 있다고 생각하지 않지만 여기는 내 MIDLET 코드입니다.

import javax.microedition.midlet.MIDlet; 
import javax.microedition.midlet.MIDletStateChangeException; 
import javax.microedition.lcdui.*; 

public class Hello extends MIDlet implements CommandListener { 

private Command exitCommand; 
private Display display; 
private Form screen; 

public Hello() { 
display = Display.getDisplay(this); 

exitCommand = new Command ("Exit", Command.EXIT, 2); 

screen = new Form ("Hello World"); 

StringItem strItem = new StringItem ("","Hello World"); 
screen.append (strItem); 

screen.addCommand (exitCommand); 
screen.setCommandListener(this); 
} 

public void startApp() throws MIDletStateChangeException { 
    // set the current display to the screen 
    display.setCurrent(screen); 

} 

public void pauseApp() { 
    // TODO Auto-generated method stub 

} 


public void destroyApp(boolean unconditional) { 
    // TODO Auto-generated method stub 

} 


public void commandAction (Command c, Displayable s) 
{ 
    if (c == exitCommand) 
    { 
     destroyApp (false); 
     notifyDestroyed(); 
    } 
} 

} 

답변

3

출력은 매우 간단합니다. 에뮬레이터에 대한 명령 줄 구문이 올바르지 않다는 것을 알려줍니다.

Java ME 장치 설정으로 이동하여 에뮬레이터 명령 줄/시작 옵션을 편집하십시오.

전환 IDE는 단기적인 수정 프로그램으로 작동하지만 항상 문제의 근원에 도달하는 것이 좋습니다. 또한 에뮬레이터 프레임 워크를 이해하는 데 도움이됩니다. 당신이 모험과 개발하고자하는 경우

1

Eclipse 용 타사 플러그인을 설치하는 대신 J2ME에 대한 지원이 통합 된 Netbeans로 전환했습니다. 이제 완벽하게 작동합니다.

0

/IDE의 나는 희망의 몇 가지 광선이보다없이 JavaME 응용 프로그램 실행, 수동으로 특정 JAD와 에뮬레이터를 실행 (리눅스 시스템이나 쉘 스크립트) 배치 스크립트를 작성

배치 스크립트 (run.bat를)

"<javame-3.0-sdk-root-folder>\bin\emulator.exe" 
        -Xdescriptor:"<jad-filename-with-extension>" >> logs.txt 
pause 
exit 

응용 프로그램 JAD/항아리 같은 폴더에 위의 스크립트를 저장합니다. 콘솔 출력물은 log.txt 파일로 제공됩니다.

1

Eclipse에서 기본 JavaMe 응용 프로그램을 실행하는 동안 비슷한 문제가 발생했습니다. "JAR 손상, 읽기 중 오류". 시동기 http://help.eclipse.org/galileo/index.jsp?topic=/org.eclipse.mtj.doc.user/html/gettingstarted/prepare_workbench.html (여기에 언급 된 것을 놓치지 않으려 고 노력하십시오)을 위해이 시리즈를 따라 한 후에 저에게 도움이되었습니다.
응용 프로그램을 시작할 때 "응용 프로그램 설명자"(왼쪽 메뉴에서 - 오른쪽 상단의 "실행"섹션에 있음)에서 "Launch as emulated Java ME JAD"를 사용하십시오.

이것은 늦은 답변이지만 앞으로 누군가를 도울 수 있습니다. 여기

관련 문제